2010-09-21 15 views
17

Dowiedziałem się o variable-pitch-modethrough a thread here on StackOverflow i jest bardzo przydatny przy pisaniu w org-mode, łatwiej na oczach i wszystkim. Ale używanie tabel w org jest prawie bezwartościowe przy użyciu czcionek proporcjonalnych. I jest w stanie korzystać z tabel jest jedną z mocnych stron z org-mode:-(`zmienny-skok` dla trybu org, stały-skala dla tabel?

Czy istnieje jakiś sposób, aby mieć proporcjonalnych czcionek dla tekstu, nagłówków itp ale czcionki o stałej szerokości dla tabel w org-mode?

Odpowiedz

18

sprawdzić, czy to działa,

(set-face-attribute 'org-table nil :inherit 'fixed-pitch)

Można użyć C-u C-x = aby zobaczyć, które twarz jest obowiązującą w danym momencie.

+0

To działa z emacs 24 :) – julien

+0

Awesome! Działa tak, jak tego chcę :) – monotux

+2

Skąd się dowiedziałeś, że stół to "stół-org"? Chciałbym użyć tego rozwiązania na wyjściu z bufora SQL – EoghanM

8

Ten kod spowoduje, że tabele i obiekty ASCII oraz bloki kodu źródłowego będą wyświetlane czcionką o stałej szerokości z zachowaniem innych atrybutów czcionek dla tabel (takich jak kolor niebieski) i tak dalej. Kod opiera się na drugiej odpowiedzi, jedyną różnicą jest zachowanie.

(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))) 

(eval-after-load "org" 
    '(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))) 

Jeśli chcesz dowiedzieć się, jak to działa i jak zastosować to do innych sytuacjach (takich jak tryb Info), czytać my post on the subject

+0

Z jakiegoś powodu, chociaż uruchomienie 'opisz-twarz' mówi mi, że czcionka powinna dziedziczyć po 'ustalonym skoku (lub po prostu' domyślnym w moim przypadku), wyświetlana czcionka jest nadal 'o zmiennej wysokości ... –

+0

Nieważne wydaje się pakiet 'buffer-local-theme' powodujący błąd. –

Powiązane problemy