Add ReasonML

This commit is contained in:
Maciej 2020-04-09 14:36:15 +03:00
parent 810d175372
commit d2e4c202b0
Signed by: maciej
GPG key ID: 41D62D42D3B0D765
11 changed files with 66 additions and 42 deletions

View file

@ -6,7 +6,7 @@
;; Company list override
(add-to-list (make-local-variable 'company-backends)
'(company-elisp company-yasnippet))
'(company-yasnippet company-elisp))
(paredit-mode 1))

15
languages/elm.el Normal file
View file

@ -0,0 +1,15 @@
(use-package elm-mode
:ensure t
:defer t)
(defun activate-elm-mode ()
"All things Elixir."
(set-indent 2)
(column-enforce-n 80)
;; Company list override
(add-to-list (make-local-variable 'company-backends)
'(elm-company company-yasnippet))
(define-key elm-mode-map (kbd "TAB") 'elm-indent-cycle))
(add-hook 'elm-mode-hook 'activate-elm-mode)

View file

@ -1,5 +1,5 @@
(use-package js2-mode
:requires (web-mode company-web lsp)
:requires (web-mode company-web)
:ensure t)
(use-package tide

View file

@ -1,6 +1,7 @@
(use-package markdown-mode
:ensure t
:defer t)
:defer t
:init (setq-default markdown-command "pandoc"))
(defun activate-markdown-mode ()
"Reconfigure markdown mode for your own purposes."
@ -11,6 +12,7 @@
(define-key markdown-mode-map (kbd "C-c <left>") nil)
(define-key markdown-mode-map (kbd "C-c <right>") nil)
(define-key markdown-mode-map (kbd "C-c <up>") nil)
(define-key markdown-mode-map (kbd "C-c <down>") nil))
(define-key markdown-mode-map (kbd "C-c <down>") nil)
(define-key markdown-mode-map (kbd "C-c C-v") 'markdown-preview))
(add-hook 'markdown-mode-hook 'activate-markdown-mode)

View file

@ -2,12 +2,8 @@
(provide 'opam-user-setup)
(use-package tuareg
:defer t
:ensure t)
(use-package reason-mode
:defer t
:ensure t)
:defer t
:ensure t)
;; Base configuration for OPAM

21
languages/reason.el Normal file
View file

@ -0,0 +1,21 @@
(use-package merlin
:defer t
:ensure t)
(use-package reason-mode
:defer t
:ensure t
:config (setq refmt-command 'opam))
(let ((opam-share (ignore-errors (car (process-lines "opam" "config" "var" "share")))))
(when (and opam-share (file-directory-p opam-share))
;; Register Merlin
(add-to-list 'load-path (expand-file-name "emacs/site-lisp" opam-share))
(autoload 'merlin-mode "merlin" nil t nil)
;; Use opam switch to lookup ocamlmerlin binary
(setq merlin-command 'opam)))
(add-hook 'reason-mode-hook
(lambda ()
(add-hook 'before-save-hook #'refmt-before-save)))
(add-hook 'reason-mode-hook 'merlin-mode)