2012-11-10 27 views
7

Tôi đang sử dụng các emac trên cả Mac OS X và Ubuntu. My .emacs hầu như giống nhau cho cả hai nền tảng, với một vài dòng liên quan đến phông chữ cục bộ và các nội dung liên quan đến hệ điều hành khác. Như tôi thường làm bổ sung cho các tập tin .emacs của tôi, tôi muốn đồng bộ chúng một cách gần như tự động. Câu hỏi của tôi là --- có cách nào trong Lisp thêm một thủ tục có điều kiện để phát hiện hệ điều hành đang chạy không? Một cái gì đó như (pseudo-code):.mã mã để xác định hệ điều hành?

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

Cảm ơn bạn trước.

Trả lời

9

Sau lời khuyên bmeric của, giải pháp này làm việc cho tôi:

(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)) 
    ) 
) 
Các vấn đề liên quan