2012-07-09 9 views
7

मैं वर्तमान में tuareg-mode का उपयोग कर रहा हूं लेकिन मैं caml-mode की कार्यक्षमता का उपयोग करने में सक्षम होना चाहता हूं। विशेष रूप से मैं टाइप एनोटेशन का इंटरैक्टिव रूप से उपयोग करने में सक्षम होना चाहता हूं, और स्पष्ट रूप से यह caml-type के साथ होता है। मैंने अपने .emacs.d में http://cristal.inria.fr/~remy/poly/emacs/index.html डालने का प्रयास किया, लेकिन मैं उलझन में हूं कि ये दो मोड एक साथ कैसे काम कर सकते हैं या नहीं। वास्तव में, मुझे काम करने के लिए caml-mode नहीं मिल सकता है।Tuareg-mode और caml-mode

मैं अपने init.el में इस लाइन है:

(add-to-list 'load-path "~/.emacs.d/modes/caml") 

लेकिन फ़ाइलों को लोड नहीं कर रहे हैं - कम से कम, कार्यशील परिभाषाएँ या कीबाइंडिंग में से कोई भी कर रहे हैं। मैंने वास्तव में सोचा कि मैं यह समझना शुरू कर रहा था कि इन emacs प्लगइन्स कैसे काम करते हैं, लेकिन मैं आश्चर्यचकित करना शुरू कर रहा हूँ। शायद कोई समझा सकता है कि और क्या होने की जरूरत है?

संपादित करें: मुझे एहसास नहीं हुआ कि मुझे काम करने के लिए require 'caml करना था। फिर भी, एनोटेशन काम नहीं कर रहे हैं हालांकि मेरे पास http://caml.inria.fr/svn/ocaml/branches/gadts/emacs/ से कैमल-प्रकार हैं। मैं -annot के साथ संकलित करता हूं लेकिन मुझे अभी भी बताया गया है कि कोई एनोटेशन फ़ाइल नहीं है।

उत्तर

5

आप ट्यूरेग मोड के साथ टाइप एनोटेशन कर सकते हैं। अगर मैं इस सटीक ~/.emacs फ़ाइल है:

(add-hook 'tuareg-mode-hook '(lambda() 
    (define-key tuareg-mode-map [f10] 'caml-types-show-type); requires caml-types 
)) 
(add-to-list 'auto-mode-alist '("\\.ml\\w?" . tuareg-mode)) 
(autoload 'caml-types-show-type "caml-types" "Show the type of expression or pattern at point." t) 

तो दबाने F10 बिंदु के तहत अभिव्यक्ति के प्रकार को दर्शाता है। आप जानते हैं, आप

ocamlc -annot foo.ml 
तो foo.ml रूप में एक ही निर्देशिका में एक फ़ाइल foo.annot है कि वहाँ

साथ अपनी फ़ाइल foo.ml संकलित करने के लिए की जरूरत है।

+0

धन्यवाद, यह काम करता है। लेकिन मैंने सफलता के बिना "सी-सी सी-टी" को बाध्य करने की कोशिश की। परिभाषित कुंजी में कुंजी निर्दिष्ट करने के लिए कोई विशेष प्रारूप है? – scry

+0

"सी-सी सी-टी" यहां भी काम करता है, इस न्यूनतम .emacs के साथ, इसे परिभाषित किए बिना। – jrouquie

+0

वैसे ऐसा लगता है कि सब कुछ काम करता है, जब तक कि 'tuareg-with-caml-mode-p' गैर-शून्य है - जब इसे सक्षम किया जाना चाहिए? मुझे लगता है कि मुझे इसे खुद नहीं करना चाहिए। एह। – scry

संबंधित मुद्दे