dotfiles/doom/.config/doom/+ui.el

50 lines
1.8 KiB
EmacsLisp

;;; ../../.dotfiles/doom/.config/doom/+ui.el -*- lexical-binding: t; -*-
;;; UI Adjustments
;; Font!
;; Doom exposes five (optional) variables for controlling fonts in Doom:
;;
;; - `doom-font' -- the primary font to use
;; - `doom-variable-pitch-font' -- a non-monospace font (where applicable)
;; - `doom-big-font' -- used for `doom-big-font-mode'; use this for
;; presentations or streaming.
;; - `doom-unicode-font' -- for unicode glyphs
;; - `doom-serif-font' -- for the `fixed-pitch-serif' face
(setq doom-font (font-spec :family "Jetbrains Mono" :size 13))
;; Theme
(setq doom-theme 'doom-gruvbox)
;; Display
(setq display-line-numbers-type 'relative)
(menu-bar-mode +1) ; add back menu bar
;; slightly nicer default buffer names
(setq doom-fallback-buffer-name "► Doom"
+doom-dashboard-name "► Doom")
;; Frames and windows
;; Move to split window
(setq evil-vsplit-window-right t
evil-split-window-below t)
;; Modeline
(setq display-time-day-and-date t)
(display-time-mode +1) ; show the time
;; show battery level (when on a laptop)
(unless (string-match-p "^Power N/A" (battery))
(display-battery-mode 1))
;; From Tecosaur's config: hide encoding when it's what's expected
(defun doom-modeline-conditional-buffer-encoding ()
"We expect the encoding to be LF UTF-8, so only show the modeline when this is not the case"
(setq-local doom-modeline-buffer-encoding
(unless (and (memq (plist-get (coding-system-plist buffer-file-coding-system) :category)
'(coding-category-undecided coding-category-utf-8))
(not (memq (coding-system-eol-type buffer-file-coding-system) '(1 2))))
t)))
(add-hook 'after-change-major-mode-hook #'doom-modeline-conditional-buffer-encoding)