about summary refs log tree commit diff
diff options
context:
space:
mode:
authorGriffin Smith <grfn@gws.fyi>2020-11-16T15·58-0500
committerglittershark <grfn@gws.fyi>2020-11-16T16·10+0000
commitbdc5d0cfa0b81cb36002bae0e4dcb7b43e074132 (patch)
treea811d358794cade3816f4196a452f122af4bba28
parent2e2bdf9c6ce1cd66ba5cfe1a42786a6f486b7969 (diff)
feat(gs/emacs): Add some config for vterm r/1878
for some reason installing it directly via nix doesn't work atm, so I
have this hack here

Change-Id: I45093633c35e756988078eb136c6e7bc3c532eea
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2078
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
-rw-r--r--users/glittershark/emacs.d/config.el2
-rw-r--r--users/glittershark/emacs.d/vterm.el24
-rw-r--r--users/glittershark/system/home/modules/emacs.nix13
3 files changed, 34 insertions, 5 deletions
diff --git a/users/glittershark/emacs.d/config.el b/users/glittershark/emacs.d/config.el
index 504648eb7b..e06f6a5d6d 100644
--- a/users/glittershark/emacs.d/config.el
+++ b/users/glittershark/emacs.d/config.el
@@ -387,7 +387,7 @@
     (add-hook! evil-normal-state-entry-hook
       #'org-align-all-tags))
   (add-hook 'org-mode-hook (lambda () (display-line-numbers-mode -1)))
-  (setq whitespace-global-modes '(not org-mode magit-mode))
+  (setq whitespace-global-modes '(not org-mode magit-mode vterm-mode))
   (setf (alist-get 'file org-link-frame-setup) 'find-file-other-window)
   (set-face-foreground 'org-block +solarized-s-base00)
 
diff --git a/users/glittershark/emacs.d/vterm.el b/users/glittershark/emacs.d/vterm.el
new file mode 100644
index 0000000000..02d6223a4c
--- /dev/null
+++ b/users/glittershark/emacs.d/vterm.el
@@ -0,0 +1,24 @@
+;;; ../code/depot/users/glittershark/emacs.d/vterm.el -*- lexical-binding: t; -*-
+
+(defun require-vterm ()
+  (add-to-list
+   'load-path
+   (concat
+    (s-trim
+     (shell-command-to-string
+      "nix-build --no-out-link ~/code/depot -A third_party.emacs.vterm"))
+    "/share/emacs/site-lisp/elpa/vterm-20200515.1412"))
+  (require 'vterm))
+
+(defun +grfn/vterm-setup ()
+  (hide-mode-line-mode)
+  (setq-local evil-collection-vterm-send-escape-to-vterm-p t))
+
+(add-hook 'vterm-mode-hook #'+grfn/vterm-setup)
+
+(map! (:map vterm-mode-map
+       "<C-escape>" #'evil-normal-state))
+
+(comment
+ (require-vterm)
+ )
diff --git a/users/glittershark/system/home/modules/emacs.nix b/users/glittershark/system/home/modules/emacs.nix
index 9e9fdb6d56..b7520085f8 100644
--- a/users/glittershark/system/home/modules/emacs.nix
+++ b/users/glittershark/system/home/modules/emacs.nix
@@ -53,10 +53,15 @@ in {
       programs.emacs = {
         enable = true;
         package = pkgs.emacsUnstable;
-        extraPackages = (epkgs: with depot.tools.emacs-pkgs; [
-          dottime
-          tvl
-        ]);
+        extraPackages = (epkgs:
+          (with depot.tools.emacs-pkgs; [
+            dottime
+            tvl
+          ])
+          ++ (with depot.third_party.emacs; [
+            vterm
+          ])
+        );
       };
 
       grfn.impure.clonedRepos = {