nix-templates/home/dev/doom.d/config-appearance.el
2025-06-25 01:35:01 -04:00

92 lines
3.2 KiB
EmacsLisp

;;; ../../../../mnt/c/Users/SmithEvar/.doom.d/config-appearance.el -*- lexical-binding: t; -*-
;; Basic IDE settings
(setq doom-theme 'spacemacs-dark) ; Theme
(setq-default indent-tabs-mode nil) ; Prefer spaces
(setq display-line-numbers-type t) ; Line number preference
(setq highlight-indent-guides-method 'character)
(when (modulep! :ui indent-guides) ; Enable indent guides in most programming-esq buffers
(add-hook 'prog-mode-hook 'highlight-indent-guides-mode))
;; Fonts
(setq doom-font (font-spec :family "CommitMono Nerd Font" :size 24 :weight 'regular)
doom-variable-pitch-font (font-spec :family "CommitMono Nerd Font")
doom-big-font (font-spec :family "CommitMono Nerd Font" :size 32))
;; (setq doom-font (font-spec :family "SauceCodePro Nerd Font Mono" :size 18 :weight 'regular)
;; doom-variable-pitch-font (font-spec :family "SauceCodePro Nerd Font Mono")
;; doom-big-font (font-spec :family "SauceCodePro Nerd Font Mono" :size 24))
(if IS-LINUX
(setq browse-url-generic-program (getenv "BROWSER")
browse-url-browser-function 'browse-url-generic))
;; Spaceline
(require 'spaceline-config)
(spaceline-spacemacs-theme)
(setq powerline-height 32)
(setq spaceline-highlight-face-func 'spaceline-highlight-face-evil-state)
(defun simplify-file-name (buffer-name)
"Returns the file combined with the immediate parent directory"
(concat (file-name-as-directory
(file-name-nondirectory
(directory-file-name
(file-name-directory buffer-name))))
(file-name-nondirectory buffer-name)))
(after! spaceline
(spaceline-define-segment simple-buffer-path
"Simplified version of the buffer file name"
(simplify-file-name (buffer-file-name)))
(spaceline-compile
; left side
'(((projectile-root)
:fallback evil-state
:face highlight-face
:priority 100)
(anzu :priority 95)
auto-compile
((buffer-modified simple-buffer-path remote-host)
:priority 98)
(major-mode :priority 79)
(process :when active)
((flycheck-error flycheck-warning flycheck-info)
:when active :priority 89)
; (minor-modes :when active :priority 9)
(mu4e-alert-segment :when active)
(erc-track :when active)
(version-control :when active :priority 78)
(org-pomodoro :when active)
(org-clock :when active)
nyan-cat)
; right side
'(which-function
(python-pyvenv :fallback python-pyenv)
(purpose :priority 94)
(battery :when active)
(selection-info :priority 95)
input-method
((buffer-encoding-abbrev point-position line-column)
:separator " | " :priority 96)
(global :when active)
(buffer-position :priority 99)
(hud :priority 99))))
;; Org mode stuff
(defun my/org-mode-hook ()
(set-face-attribute 'org-level-1 nil :height 1.2)
(set-face-attribute 'org-level-2 nil :height 1.1)
(set-face-attribute 'org-level-3 nil :height 1.0)
(set-face-attribute 'org-level-4 nil :height 1.0)
(set-face-attribute 'org-level-5 nil :height 1.0))
(add-hook 'org-load-hook #'my/org-mode-hook)
;; avy
(evil-define-key 'normal 'global "?" #'evil-avy-goto-char-2)
(setq avy-all-windows t) ; make avy search all windows by default