2012-11-10 15 views
7

Używam emacs na obu Mac OS X i Ubuntu. Mój .emacs jest w większości taki sam dla obu platform, z kilkoma liniami dotyczącymi lokalnych czcionek i innych rzeczy związanych z systemem operacyjnym. Ponieważ zwykle robię dodatki do plików .emacs, chciałbym je zsynchronizować w sposób quasi-automatyczny. Moje pytanie brzmi - czy w Lisp jest sposób na dodanie warunkowej procedury wykrywania uruchomionego systemu operacyjnego? Coś takiego (pseudo-kod):.emacs kod identyfikujący system operacyjny?

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

Z góry dziękuję.

Odpowiedz

9

Za radą bmeric, ten roztwór pracował dla mnie:

(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)) 
    ) 
) 
Powiązane problemy