mirror of
https://github.com/SqrtMinusOne/dotfiles.git
synced 2025-12-10 19:23:03 +03:00
121 lines
3.7 KiB
EmacsLisp
121 lines
3.7 KiB
EmacsLisp
;;; -*- lexical-binding: t -*-
|
|
(use-package markdown-mode
|
|
:straight t
|
|
:mode "\\.md\\'"
|
|
:config
|
|
(setq markdown-command
|
|
(concat
|
|
"pandoc"
|
|
" --from=markdown --to=html"
|
|
" --standalone --mathjax --highlight-style=pygments"
|
|
" --css=pandoc.css"
|
|
" --quiet"
|
|
))
|
|
(setq markdown-live-preview-delete-export 'delete-on-export)
|
|
(setq markdown-asymmetric-header t)
|
|
(setq markdown-open-command "/home/pavel/bin/scripts/chromium-sep")
|
|
(add-hook 'markdown-mode-hook #'smartparens-mode)
|
|
(general-define-key
|
|
:keymaps 'markdown-mode-map
|
|
"M-<left>" 'markdown-promote
|
|
"M-<right>" 'markdown-demote))
|
|
|
|
;; (use-package livedown
|
|
;; :straight (:host github :repo "shime/emacs-livedown")
|
|
;; :commands livedown-preview
|
|
;; :config
|
|
;; (setq livedown-browser "qutebrowser"))
|
|
|
|
(use-package adoc-mode
|
|
:mode (rx (| ".asciidoc") eos)
|
|
:straight t)
|
|
|
|
(use-package plantuml-mode
|
|
:straight t
|
|
:mode "(\\.\\(plantuml?\\|uml\\|puml\\)\\'"
|
|
:config
|
|
(setq plantuml-executable-path "/home/pavel/.guix-extra-profiles/emacs/emacs/bin/plantuml")
|
|
(setq plantuml-default-exec-mode 'executable)
|
|
(setq plantuml-indent-level 2)
|
|
(setq my/plantuml-indent-regexp-return "^\s*return\s+.+$")
|
|
(;; (add-to-list
|
|
;; 'plantuml-indent-regexp-end
|
|
;; my/plantuml-indent-regexp-return)
|
|
)
|
|
(add-to-list 'auto-mode-alist '("\\.plantuml\\'" . plantuml-mode))
|
|
(add-to-list 'auto-mode-alist '("\\.uml\\'" . plantuml-mode))
|
|
(add-hook 'plantuml-mode-hook #'smartparens-mode)
|
|
(general-nmap
|
|
:keymaps 'plantuml-mode-map
|
|
"RET" 'plantuml-preview))
|
|
|
|
(use-package subed
|
|
:straight (:host github :repo "rndusr/subed" :files ("subed/*.el")
|
|
:build (:not native-compile))
|
|
;; (cons (rx (| "srt" "vtt" "ass") eos) #'subed-mode)
|
|
:mode ("\\(?:ass\\|\\(?:sr\\|vt\\)t\\)\\'" . subed-mode)
|
|
:config
|
|
(general-define-key
|
|
:keymaps '(subed-mode-map subed-vtt-mode-map)
|
|
:states '(normal)
|
|
"gp" #'subed-mpv-toggle-pause))
|
|
|
|
(use-package lsp-ltex
|
|
:straight t
|
|
:after (lsp)
|
|
:init
|
|
(setq lsp-ltex-version "15.2.0")
|
|
(setq lsp-ltex-check-frequency "save"))
|
|
|
|
(defun my/ltex-lang ()
|
|
(interactive)
|
|
(setq lsp-ltex-language (completing-read
|
|
"Language: "
|
|
'("en-GB" "ru-RU" "de-DE")))
|
|
(lsp-workspace-restart (lsp--read-workspace)))
|
|
|
|
(defun my/ltex-need-p ()
|
|
(let ((file-name (buffer-file-name)))
|
|
(cond
|
|
(my/is-termux nil)
|
|
((null file-name) nil)
|
|
((string-match-p (rx "/home/pavel/" (+ alnum) ".org" eos) file-name) nil)
|
|
((string-match-p (rx (literal org-directory) "/" (or "roam" "inbox-notes" "literature-notes" "journal")) file-name) t)
|
|
((string-match-p (rx (literal org-directory)) file-name) nil)
|
|
((string-match-p (rx (literal (expand-file-name user-emacs-directory))) file-name) nil)
|
|
(t t))))
|
|
|
|
(defun my/text-mode-lsp-maybe ()
|
|
(when (my/ltex-need-p)
|
|
(lsp)))
|
|
|
|
;; (add-hook 'text-mode-hook #'my/text-mode-lsp-maybe)
|
|
|
|
(use-package langtool
|
|
:straight t
|
|
:commands (langtool-check)
|
|
:config
|
|
(setq langtool-language-tool-server-jar "/home/pavel/bin/LanguageTool-6.4/languagetool-server.jar")
|
|
(setq langtool-mother-tongue "ru")
|
|
(setq langtool-default-language "ru-RU"))
|
|
|
|
(my-leader-def
|
|
:infix "L"
|
|
"" '(:which-key "languagetool")
|
|
"c" 'langtool-check
|
|
"s" 'langtool-server-stop
|
|
"d" 'langtool-check-done
|
|
"n" 'langtool-goto-next-error
|
|
"p" 'langtool-goto-previous-error
|
|
"l" 'langtool-correct-buffer)
|
|
|
|
(use-package reverso
|
|
:straight (:host github :repo "SqrtMinusOne/reverso.el")
|
|
:init
|
|
(my-leader-def "ar" #'reverso)
|
|
:commands (reverso)
|
|
:config
|
|
(setq reverso-languages '(russian english german))
|
|
(reverso-history-mode))
|
|
|
|
(provide 'sqrt-markup)
|