From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Oliver Scholz Newsgroups: gmane.emacs.help Subject: Re: How to set the font of a region? Date: Thu, 05 Aug 2004 10:12:55 +0200 Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Message-ID: References: <8765876iil.fsf@thalassa.informatimago.com> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: sea.gmane.org 1091693808 24376 80.91.224.253 (5 Aug 2004 08:16:48 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 5 Aug 2004 08:16:48 +0000 (UTC) Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu Aug 05 10:16:40 2004 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1BsdQV-0004zi-00 for ; Thu, 05 Aug 2004 10:16:40 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1BsdU2-0005iu-9b for geh-help-gnu-emacs@m.gmane.org; Thu, 05 Aug 2004 04:20:18 -0400 Original-Newsgroups: gnu.emacs.help X-Attribution: os X-Face: "HgH2sgK|bfH$; PiOJI6|qUCf.ve<51_Od(%ynHr?=>znn#~#oS>",F%B8&\vus),2AsPYb -n>PgddtGEn}s7kH?7kH{P_~vu?]OvVN^qD(L)>G^gDCl(U9n{:d>'DkilN!_K"eNzjrtI4Ya6; Td% IZGMbJ{lawG+'J>QXPZD&TwWU@^~A}f^zAb[Ru;CT(UA]c& User-Agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3.50 (windows-nt) Cancel-Lock: sha1:4CcGgdCRjgCPu+7/1ZXQoUK5S3U= Original-NNTP-Posting-Host: 82.83.142.244 Original-X-Trace: 5 Aug 2004 10:12:53 +0200, 82.83.142.244 Original-Lines: 53 Original-X-Complaints-To: abuse@arcor-ip.de Original-Path: shelby.stanford.edu!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.freenet.de!feed.news.tiscali.de!newsfeed.arcor-ip.de!news.arcor-ip.de!82.83.142.244 Original-Xref: shelby.stanford.edu gnu.emacs.help:124657 Original-To: help-gnu-emacs@gnu.org X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: main.gmane.org gmane.emacs.help:19991 X-Report-Spam: http://spam.gmane.org/gmane.emacs.help:19991 Pascal Bourguignon writes: > I tried this (on X, emacs 21.3.1): > > (let* ((default-font "-*-console-medium-r-normal-*-16-*-*-*-*-*-*-*") > (default-face (gensym "face"))) > (make-face default-face) > (set-face-font default-face default-font) > (dolist (font font-list) > (let ((face (gensym "face"))) > (make-face face) > (set-face-font face font) > (let ((start (point))) > (insert font) > (insert "\n") > (facemenu-add-face 'default start (point)) > (facemenu-set-face default-face start (point))) > (let ((start (point))) > (insert "The lazy dog jumped over the fast fox! (let [it {be} and] say) no.more;\n") > (facemenu-add-face 'default start (point)) > (facemenu-set-face face start (point)))))) > [...] > but all the text generated keeps the same default font. Why my > facemenu-set-face calls are without effect? What major mode had the buffer in which you tried it? If font-lock mode is on, it removes all faces from buffer text before it adds its own. (In CVS Emacs you can use the text property `font-lock-face' to deal with that.) Also, I'd use `put-text-property' to add faces programmatically. And for cases like the above, I'd use an anonymous face---a list of the form: (face . PROPERTIES) (progn (switch-to-buffer (generate-new-buffer "*tmp*")) (fundamental-mode) (let ((start (point))) (insert "The quick brown fox jumps over the lazy dog.\n") ;; (facemenu-add-face 'font-lock-warning-face start (point)) (put-text-property start (point) 'face '(face :family "times new roman" :foreground "blue")) )) Oliver -- 19 Thermidor an 212 de la Révolution Liberté, Egalité, Fraternité!