From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alan Schmitt Subject: Re: Using Variable Width Fonts for org-mode and Fixed Width forTabless Date: Fri, 27 Sep 2013 09:19:49 +0200 Message-ID: References: <52443BF4.5070609@wilkesley.net> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:45237) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VPSLE-00042g-FV for emacs-orgmode@gnu.org; Fri, 27 Sep 2013 03:20:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VPSL9-00025v-Ek for emacs-orgmode@gnu.org; Fri, 27 Sep 2013 03:19:56 -0400 Received: from mail3-relais-sop.national.inria.fr ([192.134.164.104]:21705) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VPSL9-00025p-7s for emacs-orgmode@gnu.org; Fri, 27 Sep 2013 03:19:51 -0400 In-reply-to: <52443BF4.5070609@wilkesley.net> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: ian@manor-farm.org Cc: "emacs-orgmode@gnu.org mode" Hi Ian, lists@wilkesley.net writes: > I am struggling to get this to work. In my init files I have: > > (set-default-font "DejaVu Serif Italic") > > I have followed the advice on StackOverflow > http://stackoverflow.com/questions/3758139/variable-pitch-for-org-mode-fixed-pitch-for-tables > and customized my Init file to include: > > (set-face-attribute 'org-table nil :inherit 'fixed-pitch) > > However, table formatting is still screwed up. C-u C-x = shows > > xft:-unknown-IM FELL DW > Pica-normal-italic-normal-*-15-*-*-*-*-0-iso10646-1 (#x29) > > Character code properties: customize what to show > name: LATIN CAPITAL LETTER F > general-category: Lu (Letter, Uppercase) > decomposition: (70) ('F') > > There are text properties here: > face org-table > fontified t > line-prefix [Show] > wrap-prefix [Show] > > I have tried setting the font for org-table using Emacs Customize > Interface, but without any success. Ideally I want tables to use a > monospace font like Inconsolata or DejaVu mono. Can anyone provide an > example of how to set org-table to use a specified fixed width font. I've played a little with this, and here is what I have (straight from my config file). First, I set up the font for variable pitch, and I tell emacs to use it for text modes. ** setup #+BEGIN_SRC emacs-lisp (set-face-attribute 'variable-pitch nil :family "Ubuntu") (set-face-attribute 'variable-pitch nil :height 140) (add-hook 'text-mode-hook 'variable-pitch-mode) #+END_SRC Then I set up exceptions for some faces in some modes. I have exceptions for info, mu4e, and org mode. Here are the ones for org mode. ** org from http://yoo2080.wordpress.com/2013/05/30/monospace-font-in-tables-and-source-code-blocks-in-org-mode-proportional-font-in-other-parts/ #+BEGIN_SRC emacs-lisp (defun my-adjoin-to-list-or-symbol (element list-or-symbol) (let ((list (if (not (listp list-or-symbol)) (list list-or-symbol) list-or-symbol))) (require 'cl-lib) (cl-adjoin element list))) (mapc (lambda (face) (set-face-attribute face nil :inherit (my-adjoin-to-list-or-symbol 'fixed-pitch (face-attribute face :inherit)))) (list 'org-code 'org-block 'org-table 'org-block-background 'org-date 'org-link 'org-footnote)) #+END_SRC What this says is: use fixed-pitch for the faces in the list at the end. I have to include dates, links, and footnotes because I use them in tables and I don't know how to conditionally change a face (i.e., use fixed-pitch for links in tables but not for links in other places). Hopefully this will work for you. Alan