The great config remake.
I decided to go back to the basics with this one. Only the packages I think I *REALLY* need (or want) are left, the rest are replaced by the built-in alternatives or even better, removed.
This commit is contained in:
@@ -1,103 +1,17 @@
|
||||
;;; 05-basic.el --- Setup some basics. -*- no-byte-compile: t; lexical-binding: t; -*-
|
||||
|
||||
;; Setup the font
|
||||
(set-face-attribute 'default nil :height 110 :font "Iosevka Nerd Font" :weight 'normal)
|
||||
|
||||
;; I use narrowing, I am a mature emacs user! I do not need the hand-holding
|
||||
;; (usually).
|
||||
(put 'narrow-to-region 'disabled nil)
|
||||
|
||||
;; This package provides which-key, which is a minor mode for Emacs
|
||||
;; that displays the key bindings following your currently entered
|
||||
;; incomplete command (a prefix) in a popup.
|
||||
(use-package which-key
|
||||
:ensure t
|
||||
:diminish which-key-mode
|
||||
:config
|
||||
(which-key-mode))
|
||||
|
||||
;; Pixel perfect scrolling
|
||||
(unless (version< emacs-version "29.0")
|
||||
(pixel-scroll-precision-mode))
|
||||
|
||||
;; Display time
|
||||
(display-time-mode)
|
||||
(setq display-time-24hr-format t)
|
||||
|
||||
(show-paren-mode +1) ; Paren match highlighting
|
||||
|
||||
;; Winner mode is a global minor mode that records the changes in the
|
||||
;; window configuration (i.e. how the frames are partitioned into
|
||||
;; windows) so that the changes can be "undone" using the command
|
||||
;; ‘winner-undo’.
|
||||
(winner-mode 1)
|
||||
|
||||
;; Configure Emacs to ask for confirmation before exiting
|
||||
(setq confirm-kill-emacs 'y-or-n-p)
|
||||
|
||||
;; This package provides a complete git integration
|
||||
(use-package magit
|
||||
:ensure t
|
||||
:defer t
|
||||
:commands (magit))
|
||||
|
||||
(electric-indent-mode)
|
||||
(electric-pair-mode)
|
||||
|
||||
(use-package modus-themes
|
||||
:ensure t
|
||||
:defer nil
|
||||
:config
|
||||
(load-theme 'modus-operandi t))
|
||||
|
||||
(use-package hbdh
|
||||
:straight (hbdh :type git :host github :repo "zzhjerry/hbdh-mode")
|
||||
:config (hbdh-mode))
|
||||
|
||||
(defun my-hbdh-highlight-line ()
|
||||
"Activate hbdh, dim text outside of current line"
|
||||
(interactive)
|
||||
(let ((point-beginning (line-beginning-position))
|
||||
(point-end (line-end-position)))
|
||||
;; note that those are internal functions
|
||||
;; probably should use hbdh activation commands instead of this
|
||||
(hbdh--activate-overlay point-beginning point-end)
|
||||
(hbdh--rewrite-region-face)))
|
||||
|
||||
(setq hbdh-mode-map (make-sparse-keymap))
|
||||
(define-key hbdh-mode-map "a" 'hbdh-activate-on-region)
|
||||
(define-key hbdh-mode-map "d" 'hbdh-deactivate)
|
||||
(define-key hbdh-mode-map "l" 'my-hbdh-highlight-line)
|
||||
|
||||
(global-set-key "\C-ch" hbdh-mode-map)
|
||||
|
||||
;; A must have for any NixOS user
|
||||
(use-package direnv
|
||||
:ensure t
|
||||
:defer nil
|
||||
:config (direnv-mode))
|
||||
|
||||
;; RSS reader
|
||||
(use-package
|
||||
elfeed
|
||||
:ensure t
|
||||
:defer t
|
||||
:commands (elfeed)
|
||||
:init (setq elfeed-feeds
|
||||
'((http://feeds.nightvalepresents.com/welcometonightvalepodcast
|
||||
nightvale)
|
||||
("https://sachachua.com/blog/category/emacs-news/feed"
|
||||
emacs)
|
||||
("https://planet.emacslife.com/atom.xml"
|
||||
emacs)
|
||||
("https://kagi.com/smallweb/appreciated"
|
||||
small-web)
|
||||
("https://kagi.com/api/v1/smallweb/feed/?gh"
|
||||
small-web)
|
||||
("https://scour.ing/@DiToast/rss.xml"
|
||||
scour)))
|
||||
:bind (("C-c f" . elfeed)))
|
||||
|
||||
;; Setting this to true makes it so that Emacs saves existing clipboard text
|
||||
;; into kill ring before replacing it.
|
||||
(setq save-interprogram-paste-before-kill t)
|
||||
@@ -147,4 +61,13 @@
|
||||
|
||||
(reverse-im-mode t)
|
||||
|
||||
;; Windmove family of commands allow easy navigation when there is more than two
|
||||
;; buffers on screen. The bindings are the Vim movement commands with the
|
||||
;; Control+Shift modifiers, adjusted for the workman layout and shifted a bit
|
||||
;; down and to the left.
|
||||
(keymap-global-set "C-S-k" #'windmove-left)
|
||||
(keymap-global-set "C-S-l" #'windmove-down)
|
||||
(keymap-global-set "C-<" #'windmove-up)
|
||||
(keymap-global-set "C->" #'windmove-right)
|
||||
|
||||
;;; 05-basic.el ends here
|
||||
|
||||
Reference in New Issue
Block a user