Можно ли использовать шрифт tuareg в caml-mode под Emacs?

Для отступа "если" я должен использовать caml-mode под Emacs.

Но я нахожу шрифт tuareg более красочный, чем caml-font, поэтому мой вопрос, можно ли использовать шрифт tuareg в caml-mode,

Кроме того, с текущим .emacs, который требует caml-fontкогда я открою .ml файл, некоторые строки (особенно в начале файла) не выделены. Если я перейду к этим строкам, измените их, они изменят свой цвет. Может кто-нибудь сказать мне, как решить эту проблему?

Кроме того, есть ли у вас лучшие шрифты для программ ocaml, кроме одного из tuareg а также caml-font?

Большое спасибо!

1 ответ

Ты имеешь в виду, что тебе больше нравятся цвета или их больше?

Если последнее, то, вероятно, трудно использовать синхронизацию шрифтов tuareg с режимом caml, хотя я только немного посмотрел на них.

Если это первое, вы можете просто настроить лица, используемые caml-mode использовать лучшие лица (под которыми я подразумеваю гарнитуру или "цвет"). С достаточно новым emacs, наведите курсор на лицо, которое вы хотите изменить, и наберите M-x customize-face RET, Он предложит имя лица, на котором вы находитесь, поэтому нажмите еще раз. Тогда вы можете изменить лицо так, как вы хотите. В качестве первого шага вы можете сохранить tuareg.el откройте и проверьте, какие лица, например,

(defface tuareg-font-lock-governing-face
  '((((background light)) (:foreground "blue" :bold t))
    (t (:foreground "orange" :bold t)))
  "Face description for governing/leading keywords."
  :group 'tuareg-faces)

это определение лица, используемого для let, так что вы просто поместите курсор на let, M-x customize-face RET RET, затем измените цвет переднего плана на синий и включите жирный (если у вас есть светлый фон). Не забудьте сохранить его.

Вы также можете редактировать caml-font.el и изменить caml-font-lock-keywords раздел, чтобы использовать шрифты, которые вам нравятся (которые могут быть от туарегов). Если вы хотите добавить в свой .emacs вместо этого вы должны изменить его на (setq caml-font-lock-keywords ...),

(defconst caml-font-lock-keywords
  (list
   ...
;definition
   (cons (concat
          "\\<\\(a\\(nd\\|s\\)\\|c\\(onstraint\\|lass\\)"
          "\\|ex\\(ception\\|ternal\\)\\|fun\\(ct\\(ion\\|or\\)\\)?"
          "\\|in\\(herit\\|itializer\\)?\\|let"
          "\\|m\\(ethod\\|utable\\|odule\\)"
          "\\|of\\|p\\(arser\\|rivate\\)\\|rec\\|type"
          "\\|v\\(al\\(ue\\)?\\|irtual\\)\\)\\>")
         ;; 'font-lock-type-face)
         'tuareg-font-lock-governing-face)
   ...
   ))
Другие вопросы по тегам