summary refs log tree commit diff
path: root/emacs/custom/my-text.el
blob: b4f7c28c2a8d166785170d477174c139e22d3703 (plain) (blame)
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
;;; my-text.el --- configures modes related to text -*- lexical-binding: t -*-

;;; Commentary:

;;; Code:

(customize-set-variable 'ispell-program-name (executable-find "aspell"))
(customize-set-variable 'ispell-dictionary "en_US")
(customize-set-variable 'ispell-extra-args '("--camel-case"))

(add-hook 'text-mode-hook 'flyspell-mode)
(add-hook 'text-mode-hook 'goto-address-mode)

(dolist (hook '(prog-mode-hook conf-mode-hook))
  (add-hook hook 'flyspell-prog-mode))

(add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode))

(customize-set-variable 'markdown-fontify-code-block-natively t)
(when (executable-find "pandoc")
  (customize-set-variable 'markdown-command "pandoc -f markdown -t html"))

(eval-after-load 'dabbrev
  (let ((map global-map))
    (define-key map (kbd "M-/") #'dabbrev-expand)
    (define-key map (kbd "C-x M-/") #'dabbrev-completion)))

(setq only-global-abbrevs nil)
(eval-after-load 'abbrev
  (let ((table text-mode-abbrev-table))
    (define-abbrev table "github" "GitHub")
    (define-abbrev table "emacs" "Emacs")))

(dolist (hook '(text-mode-hook git-commit-mode-hook))
  (add-hook hook 'abbrev-mode))

(provide 'my-text)

;;; my-text.el ends here