diff --git a/emacs/init.el b/emacs/init.el new file mode 100644 index 00000000..c011a0df --- /dev/null +++ b/emacs/init.el @@ -0,0 +1,17 @@ +(require 'evil) +(evil-mode 1) + +(load-theme 'gruvbox t) + +(menu-bar-mode -1) +(tool-bar-mode -1) +(toggle-scroll-bar -1) + +(load-file (let ((coding-system-for-read 'utf-8)) + (shell-command-to-string "agda-mode locate"))) + +(setq auto-mode-alist + (append + '(("\\.agda\\'" . agda2-mode) + ("\\.lagda.md\\'" . agda2-mode)) + auto-mode-alist)) diff --git a/flake.nix b/flake.nix index f03ec099..e2eb60f4 100644 --- a/flake.nix +++ b/flake.nix @@ -24,13 +24,24 @@ src = plfa; }) ]); + emacsWithPackages = (pkgs.emacsPackagesFor pkgs.emacs).emacsWithPackages + (epkgs: (with epkgs.melpaPackages; [ + gruvbox-theme + agda2-mode + evil + ]) ++ (with epkgs.elpaPackages; [ + undo-tree + ])); in { devShell = pkgs.mkShell { buildInputs = [ - pkgs.emacs + emacsWithPackages agda ]; + shellHook = '' + XDG_CONFIG_HOME=$(pwd) emacs + ''; }; }); }