blob: 1bad4cbddc0b97395e6f8cd81a9609469cd1d8f9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
;;; flycheck-config --- Syntax/Grammar Check -*- lexical-binding: t; -*-
;; author Craig Jennings <c@cjennings.net>
;;; Commentary:
;;; Code:
(defun cj/prose-helpers-on ()
"Ensure that abbrev, flyspell, and flycheck are on."
(interactive)
(if (not (abbrev-mode))
(abbrev-mode))
(flyspell-on-for-buffer-type)
(if (not (flycheck-mode))
(flycheck-mode)))
;;;; ---------------------------------- Linting --------------------------------
(use-package flycheck
:defer .5
:hook (sh-mode emacs-lisp-mode)
:bind ("C-; ?" . flycheck-list-errors)
:config
;; don't warn about double-spaces after period.
(setq-default checkdoc-arguments '("sentence-end-double-space" nil "warn-escape" nil))
;; proselint must be installed via the OS
(flycheck-define-checker proselint
"A linter for prose."
:command ("proselint" source-inplace)
:error-patterns
((warning line-start (file-name) ":" line ":" column ": "
(id (one-or-more (not (any " "))))
(message) line-end))
:modes (text-mode markdown-mode gfm-mode))
(add-to-list 'flycheck-checkers 'proselint))
;; ;; https://github.com/emacs-grammarly/flycheck-grammarly
;; (use-package flycheck-grammarly
;; :defer 1
;; :after flycheck
;; :config
;; (with-eval-after-load 'flycheck
;; (flycheck-grammarly-setup)))
(provide 'flycheck-config)
;;; flycheck-config.el ends here
|