2009-11-05 10 views
6

Sto condividendo i miei file di configurazione di emacs tra una macchina Linux e una scatola OS X. La config si interrompe tuttavia quando definisco un font specifico per Emacs.app nella configurazione che non è quindi disponibile su linux.Test per la piattaforma in elisp?

Esiste un modo per testare la piattaforma corrente e quindi eseguire o saltare le istruzioni specifiche di OS X?

risposta

8

La variabile elisp system-type è ciò che si desidera. Così si può scrivere

(if (eq system-type 'darwin) 
    (your-macosx-specific-configuration)) 
3

un'altra possibilità da considerare sta testando direttamente per il tipo di carattere

nei miei .emacs Ho il seguente:

(let ((prefered-fonts '("-apple-espresso mono-medium-r-normal--0-0-0-0-m-0-iso10646-1"))) 
    (dolist (font prefered-fonts) 
    (if (and (functionp 'x-list-fonts) (x-list-fonts font)) 
     (progn 
     (add-to-list 'initial-frame-alist (cons 'font font)) 
     (add-to-list 'default-frame-alist (cons 'font font)))))) 

questo funziona anche da emacs console in OS X, che appena testando il sistema non catturerebbe

Problemi correlati