theurgy/workflows/markdown-custom.el

44 lines
1.5 KiB
EmacsLisp

;;; markdown-custom.el --- Customisations for markdown file editing -*- lexical-binding: t -*-
;; This file is not part of GNU Emacs
;; This program is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
;;; Code:
(use-package markdown-mode
:bind (:map markdown-mode
("M-<left>" . markdown-promote-list-item)
("M-<right>" . markdown-demote-list-item))
:config
(keymap-unset markdown-mode-map "C-c <left>")
(keymap-unset markdown-mode-map "C-c <right>")
(keymap-unset markdown-mode-map "C-c <up>")
(keymap-unset markdown-mode-map "C-c <down>")
(when (and (not (equal system-type 'windows-nt)) (locate-file "harper-ls" exec-path))
(with-eval-after-load 'eglot
(add-to-list 'eglot-server-programs
'(markdown-mode . ("harper-ls" "--stdio"))))
(setq-default eglot-workspace-configuration
'(:harper-ls (:dialect "Australian")))
(add-hook 'markdown-mode-hook 'eglot-ensure)))
(provide 'markdown-custom)
;;; markdown-custom.el ends here