2012-11-10 10 views
7

मैं मैक ओएस एक्स और उबंटू दोनों पर emacs का उपयोग कर रहा हूँ। स्थानीय फोंट और अन्य ओएस से संबंधित सामानों से संबंधित कुछ पंक्तियों के साथ, मेरे .emacs दोनों प्लेटफॉर्म के लिए अधिकतर समान हैं। जैसा कि मैं आमतौर पर अपने .emacs फ़ाइलों में जोड़ करता हूं, मैं उन्हें अर्ध स्वचालित तरीके से सिंक करना चाहता हूं। मेरा सवाल है --- क्या चल रहे ओएस का पता लगाने के लिए एक सशर्त प्रक्रिया जोड़ने के लिए लिस्प में कोई तरीका है? कुछ (छद्म कोड):.emacs कोड?

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

अग्रिम धन्यवाद।

उत्तर

9

bmeric की सलाह के बाद, यह समाधान मेरे लिए काम किया:

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