diff --git a/modules/emacs/vc/config.el b/modules/emacs/vc/config.el index 38a590e84..4eb6ef04b 100644 --- a/modules/emacs/vc/config.el +++ b/modules/emacs/vc/config.el @@ -1,6 +1,8 @@ ;;; emacs/vc/config.el -*- lexical-binding: t; -*- -;; `git-timemachine' +(setq vc-make-backup-files nil) + + (after! git-timemachine ;; Sometimes I forget `git-timemachine' is enabled in a buffer, so instead of ;; showing revision details in the minibuffer, show them in @@ -16,33 +18,28 @@ (add-transient-hook! #'git-timemachine-blame (require 'magit-blame)))) -;; `git-commit-mode' -(after! git-commit-mode - (set-yas-minor-mode! 'git-commit-mode)) +;;;###package git-commit +(def-package! git-commit + :after-call after-find-file + :config + (global-git-commit-mode +1) + (set-yas-minor-mode! 'git-commit-mode) -(defun +vc|enforce-git-commit-conventions () - "See https://chris.beams.io/posts/git-commit/" - (setq fill-column 72 - git-commit-summary-max-length 50 - git-commit-style-convention-checks '(overlong-summary-line non-empty-second-line))) -(add-hook 'git-commit-mode-hook #'+vc|enforce-git-commit-conventions) + (defun +vc|enforce-git-commit-conventions () + "See https://chris.beams.io/posts/git-commit/" + (setq fill-column 72 + git-commit-summary-max-length 50 + git-commit-style-convention-checks '(overlong-summary-line non-empty-second-line))) + (add-hook 'git-commit-mode-hook #'+vc|enforce-git-commit-conventions) -(defun +vc|start-in-insert-state-maybe () - "Start git-commit-mode in insert state if in a blank commit message, + (defun +vc|start-in-insert-state-maybe () + "Start git-commit-mode in insert state if in a blank commit message, otherwise in default state." - (when (and (bound-and-true-p evil-mode) - (bobp) (eolp)) - (evil-insert-state))) -(add-hook 'git-commit-setup-hook #'+vc|start-in-insert-state-maybe) + (when (and (bound-and-true-p evil-mode) + (bobp) (eolp)) + (evil-insert-state))) + (add-hook 'git-commit-setup-hook #'+vc|start-in-insert-state-maybe)) - -;; -;; `vc' (built-in) - -;; `vc-hooks' -(setq vc-make-backup-files nil) - -;; `vc-annotate' (after! vc-annotate (set-popup-rules! '(("^\\vc-d" :select nil) ; *vc-diff* @@ -51,7 +48,6 @@ otherwise in default state." '(vc-annotate-mode vc-git-log-view-mode) 'normal)) -;; `smerge-mode' (after! smerge-mode (unless EMACS26+ (with-no-warnings diff --git a/modules/emacs/vc/packages.el b/modules/emacs/vc/packages.el index 3506fa5a0..8a5c76dad 100644 --- a/modules/emacs/vc/packages.el +++ b/modules/emacs/vc/packages.el @@ -1,6 +1,10 @@ ;; -*- no-byte-compile: t; -*- ;;; emacs/vc/packages.el +(package! vc :built-in t) +(package! vc-annotate :built-in t) +(package! smerge-mode :built-in t) + (package! git-link) (package! git-timemachine) (package! gitconfig-mode)