feat: initial emacs config

This commit is contained in:
Thiago Sposito 2025-12-13 11:11:01 -03:00
parent 0cb9c93c5c
commit 2e6aa91f36
Signed by: thiago
GPG key ID: 3065EA73A976D430
4 changed files with 111 additions and 5 deletions

View file

@ -0,0 +1,37 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [
emacs-all-the-icons-fonts
sbcl
];
programs.emacs = {
enable = true;
extraPackages = epkgs: with epkgs; [
use-package
magit
org
org-roam
evil
evil-collection
which-key
counsel
ivy
swiper
doom-themes
nord-theme
projectile
flycheck
company
lsp-mode
lsp-ui
dap-mode
treemacs
treemacs-evil
treemacs-projectile
sly
];
extraConfig = builtins.readFile ./init.el;
};
}

View file

@ -0,0 +1,70 @@
(require 'package)
(package-initialize)
(eval-when-compile
(require 'use-package))
(use-package evil
:init
(evil-mode 1))
(use-package evil-collection
:after evil
:config
(evil-collection-init))
(use-package which-key
:config
(which-key-mode))
(use-package ivy
:config
(ivy-mode 1))
(use-package counsel
:after ivy
:config
(counsel-mode 1))
(use-package swiper
:after ivy)
(use-package doom-themes
:config
(load-theme 'doom-one t))
(use-package projectile
:config
(projectile-mode 1))
(use-package company
:config
(global-company-mode))
(use-package flycheck
:config
(global-flycheck-mode))
(use-package lsp-mode
:hook ((python-mode . lsp)
(rust-mode . lsp)
(go-mode . lsp))
:commands lsp)
(use-package lsp-ui
:after lsp-mode
:commands lsp-ui-mode)
(use-package treemacs
:commands treemacs)
(use-package treemacs-evil
:after (treemacs evil))
(use-package treemacs-projectile
:after (treemacs projectile))
(use-package sly
:config
(setq inferior-lisp-program "sbcl"))