doomemacs/modules/lang/data/config.el
Henrik Lissner 9f0ebe42e8
Replace :electric with set-electric-rules!
And general refactor of the emacs/electric-indent module.

Also updates (set! :electric ...) references in various :lang modules
2018-06-15 13:32:07 +02:00

52 lines
1.3 KiB
EmacsLisp

;;; lang/data/config.el -*- lexical-binding: t; -*-
;; Built in plugins
(dolist (spec '(("/sxhkdrc\\'" . conf-mode)
("\\.\\(?:hex\\|nes\\)\\'" . hexl-mode)
("\\.plist\\'" . nxml-mode)))
(map-put auto-mode-alist (car spec) (cdr spec)))
(after! nxml-mode
(set-company-backend! 'nxml-mode '(company-nxml company-yasnippet)))
;;
;; Third-party plugins
;;
;; `csv-mode'
(map! :after csv-mode
:map csv-mode-map
(:localleader
:desc "Align fields" :nvm "a" #'csv-align-fields
:desc "Unalign fields" :nvm "u" #'csv-unalign-fields
:desc "Sort fields" :nvm "s" #'csv-sort-fields
:desc "Sort fields (n)" :nvm "S" #'csv-sort-numeric-fields
:desc "Kill fields" :nvm "k" #'csv-kill-fields
:desc "Transpose fields" :nvm "t" #'csv-transpose))
(def-package! graphql-mode
:mode "\\.gql\\'")
(def-package! json-mode
:mode "\\.js\\(?:on\\|[hl]int\\(rc\\)?\\)\\'"
:config
(when (featurep! :feature syntax-checker)
(add-hook 'json-mode-hook #'flycheck-mode))
(set-electric! 'json-mode :chars '(?\n ?: ?{ ?})))
(def-package! vimrc-mode
:mode "\\.?vimperatorrc\\'")
;;
;; Frameworks
;;
(def-project-mode! +data-ansible-mode
:modes (yaml-mode)
:files ("roles/"))
(def-project-mode! +data-vagrant-mode
:files ("Vagrantfile"))