Туарег-режим и Кэмл-режим
В настоящее время я использую режим туарегов, но я хотел бы также использовать функциональность режима Caml. В частности, я хочу иметь возможность использовать аннотации типов в интерактивном режиме, и, очевидно, это происходит с caml-типами. Я пытался поместить http://cristal.inria.fr/~remy/poly/emacs/index.html в мой.emacs.d, но я не уверен, как эти два режима могут работать вместе. На самом деле я не могу заставить работать режим caml.
У меня есть эта строка в моем init.el:
(add-to-list 'load-path "~/.emacs.d/modes/caml")
Но файлы не загружаются - по крайней мере, ни одно из определений функций или сочетаний клавиш не являются. Я действительно думал, что начинаю понимать, как работают эти плагины emacs, но я начинаю удивляться. Может быть, кто-то может объяснить, что еще должно произойти?
Изменить: я не понял, что мне нужно require 'caml
чтобы это работало. Тем не менее, аннотации, похоже, не работают, хотя у меня есть caml-типы с http://caml.inria.fr/svn/ocaml/branches/gadts/emacs/. Я собираю с -annot
но мне все еще говорят, что нет файла аннотаций.
1 ответ
Вы можете иметь тип аннотации в режиме туарегов. Если у меня есть точный файл ~/.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
показывает тип выражения под точкой. Как вы знаете, вам нужно скомпилировать файл foo.ml
с
ocamlc -annot foo.ml
так что есть файл foo.annot
в том же каталоге, что и foo.ml
,