Можно ли использовать шрифт tuareg в caml-mode под Emacs? - PullRequest
1 голос
/ 20 июля 2011

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

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

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

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

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

1 Ответ

1 голос
/ 22 июля 2011

Вы хотите сказать, что вам больше нравятся цвета или их больше?

Если последнее, то, вероятно, трудно использовать блокировку шрифтов 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)
   ...
   ))
...