From 40738ecc3f9f053c35e94cc40396d1055e06dfbf Mon Sep 17 00:00:00 2001 From: Kat Inskip Date: Tue, 3 Feb 2026 22:23:41 -0800 Subject: [PATCH] feat: emacs? --- .gitignore | 51 ++++++++++++++++++++++++++++++++ dotfiles/.config/emacs/config.el | 15 ++++++++++ dotfiles/.config/emacs/init.el | 1 + home.scm | 14 +++++++++ 4 files changed, 81 insertions(+) create mode 100644 .gitignore create mode 100644 dotfiles/.config/emacs/config.el create mode 100644 dotfiles/.config/emacs/init.el diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..489b892 --- /dev/null +++ b/.gitignore @@ -0,0 +1,51 @@ +# -*- mode: gitignore; -*- +*~ +\#*\# +/.emacs.desktop +/.emacs.desktop.lock +*.elc +auto-save-list +tramp +.\#* + +# Org-mode +.org-id-locations +*_archive + +# flymake-mode +*_flymake.* + +# eshell files +/eshell/history +/eshell/lastdir + +# elpa packages +/elpa/ + +# reftex files +*.rel + +# AUCTeX auto folder +/auto/ + +# cask packages +.cask/ +dist/ + +# Flycheck +flycheck_*.el + +# server auth directory +/server/ + +# projectiles files +.projectile + +# directory configuration +.dir-locals.el + +# network security +/network-security.data + +# undo-tree +*.~undo-tree~ diff --git a/dotfiles/.config/emacs/config.el b/dotfiles/.config/emacs/config.el new file mode 100644 index 0000000..a88990e --- /dev/null +++ b/dotfiles/.config/emacs/config.el @@ -0,0 +1,15 @@ +(evil-mode 1) + +;; elisp paredit +(add-hook 'emacs-lisp-mode-hook 'enable-paredit-mode) +(add-hook 'emacs-lisp-mode-hook 'evil-paredit-mode) + +;; scheme paredit +(add-hook 'scheme 'enable-paredit-mode) +(add-hook 'scheme 'evil-paredit-mode) + +;; geiser +(add-hook 'geiser-mode-hook 'ac-geiser-setup) +(add-hook 'geiser-repl-mode-hook 'ac-geiser-setup) +(eval-after-load "auto-complete" + '(add-to-list 'ac-modes 'geiser-repl-mode)) diff --git a/dotfiles/.config/emacs/init.el b/dotfiles/.config/emacs/init.el new file mode 100644 index 0000000..8b2a106 --- /dev/null +++ b/dotfiles/.config/emacs/init.el @@ -0,0 +1 @@ +(load (expand-file-name (concat user-emacs-directory "config.el"))) diff --git a/home.scm b/home.scm index 31c55f4..fde2ab0 100644 --- a/home.scm +++ b/home.scm @@ -14,6 +14,8 @@ (use-package-modules wm ; grimshot xdisorg ; wl-clipboard rust-apps ; jujutsu + emacs ; self-explanatory + emacs-xyz ; evil vim ; self-explanatory librewolf ; self-explanatory lua ; fennel @@ -24,9 +26,20 @@ (list neovim neovim-nfnl neovim-conjure + vim-guile vim-paredit vim-guix-vim)) +(define emacs-packages + (list emacs + emacs-paredit + emacs-geiser + emacs-geiser-guile + emacs-evil + emacs-evil-collection + emacs-evil-commentary + emacs-evil-paredit)) + (define sway-bar-status #~(string-append "while " #$coreutils "/bin/date" " +'%Y-%m-%d %X'; do sleep 1; done")) @@ -54,6 +67,7 @@ (define home-config (home-environment (packages (append neovim-packages + emacs-packages (list jujutsu ripgrep fd