- Add `magit-refs-mode` to tab grouping - Add `eshell`/`eat` under `C-c x` prefix - Replace `WAITING` org state with `IDKY` - Add `lisp-extra-font-lock` package - Fix daemon mode theme loading - Simplify denote keywords and update dired/dirvish bindings
75 lines
1.5 KiB
EmacsLisp
75 lines
1.5 KiB
EmacsLisp
;;; init-prog.el --- programming -*- lexical-binding: t -*-
|
||
|
||
;;; Commentary:
|
||
|
||
;;; Code:
|
||
|
||
;; hideshow,折叠代码
|
||
(use-package hideshow
|
||
:hook
|
||
(prog-mode . hs-minor-mode))
|
||
|
||
;; xref,查找引用
|
||
(use-package xref
|
||
:autoload xref-show-definitions-completing-read
|
||
:init
|
||
(when (executable-find "rg")
|
||
(setq xref-search-program 'ripgrep))
|
||
|
||
(setq xref-show-definitions-function #'xref-show-definitions-completing-read
|
||
xref-show-xrefs-function #'xref-show-definitions-completing-read))
|
||
|
||
;; flycheck,语法检查
|
||
(use-package flycheck)
|
||
|
||
(use-package flycheck-guile
|
||
:hook
|
||
(scheme-mode . (lambda ()
|
||
(require 'flycheck-guile))))
|
||
|
||
(use-package consult-flycheck)
|
||
|
||
;; tree-sitter
|
||
(use-package treesit-auto
|
||
:config
|
||
(setq treesit-auto-install 'prompt)
|
||
(global-treesit-auto-mode)
|
||
(setq treesit-font-lock-level 4))
|
||
|
||
;; scheme
|
||
(use-package geiser
|
||
:config
|
||
(with-eval-after-load 'geiser
|
||
(setq geiser-default-implementation 'guile)))
|
||
|
||
(use-package geiser-guile)
|
||
|
||
;; common-lisp
|
||
(use-package sly
|
||
:config
|
||
(setq sly-lisp-implementations nil))
|
||
|
||
(use-package lisp-extra-font-lock
|
||
:hook
|
||
(lisp-mode . lisp-extra-font-lock-mode))
|
||
|
||
;; markdown
|
||
(use-package markdown-mode
|
||
:bind
|
||
(:map markdown-mode-map
|
||
("C-c C-e" . markdown-do))
|
||
:hook
|
||
(markdown-mode . toggle-truncate-lines)
|
||
:init
|
||
(setq markdown-command "multimarkdown"
|
||
markdown-fontify-code-blocks-natively t))
|
||
|
||
(use-package edit-indirect)
|
||
|
||
;; html
|
||
(use-package htmlize)
|
||
|
||
(provide 'init-prog)
|
||
|
||
;;; init-prog.el ends here
|