2012-11-10 16 views
7

Hem Mac OS X hem de Ubuntu'da emacs kullanıyorum. Benim .emacs çoğunlukla her iki platform için de aynıdır, yerel yazı tipleri ve diğer işletim sistemi ile ilgili konularla ilgili birkaç satır. Genellikle .emacs dosyalarına eklemeler yaptığım için bunları otomatik olarak eşzamanlı olarak senkronize etmek isterim. Sorum şu: Lisp'de çalışan işletim sistemini tespit etmek için bir koşullu prosedür eklemek için bir yol var mı? Bir şey gibi (sözde kod):.emacs kodu?

If OS X: 
    run this and that command; 
If Linux: 
    run that other command; 
Fi 

Şimdiden teşekkürler.

cevap

9

bmeric tavsiyelerine uyarak bu çözüm benim için çalıştı:

(cond 
    ((string-equal system-type "gnu/linux") 
     ;; window size 
     (add-to-list 'default-frame-alist '(left . 0)) 
     (add-to-list 'default-frame-alist '(top . 0)) 
     (add-to-list 'default-frame-alist '(height . 32)) 
     (add-to-list 'default-frame-alist '(width . 70)) 
     ) 
    ((string-equal system-type "darwin") 
    ;; window size 
     (add-to-list 'default-frame-alist '(left . 0)) 
     (add-to-list 'default-frame-alist '(top . 0)) 
     (add-to-list 'default-frame-alist '(height . 63)) 
     (add-to-list 'default-frame-alist '(width . 100)) 
    ) 
)