about summary refs log tree commit diff
path: root/.emacs.d
diff options
context:
space:
mode:
authorvenomade <venomade@venomade.com>2025-05-22 20:25:43 +0100
committervenomade <venomade@venomade.com>2025-05-22 20:25:43 +0100
commitedc74a464606b98378e24e27dcd3041b0f7f9162 (patch)
treef8f9acfcb332360906eb2d0ac7f1115d543768e4 /.emacs.d
parentedcf5dd381c26274a939f4e703539b15c0058e99 (diff)
MacOS & Neovim HEAD master
Diffstat (limited to '.emacs.d')
-rw-r--r--.emacs.d/config.org48
-rw-r--r--.emacs.d/early-init.el6
2 files changed, 44 insertions, 10 deletions
diff --git a/.emacs.d/config.org b/.emacs.d/config.org
index 070de5b..36876fa 100644
--- a/.emacs.d/config.org
+++ b/.emacs.d/config.org
@@ -65,7 +65,7 @@ I'm using the Straight package manager instead of use-package because it is only
 
 * Configs
 ** Custom Functions
-*** Cursor follow on split 
+*** Cursor follow on split
 This is so that action can be taken as soon as a split takes place, to either close/move the window or perform an action inside of it.
 #+begin_src emacs-lisp
   (defun split-and-follow-horizontally()
@@ -282,6 +282,10 @@ Add shortcuts to scrolling and moving between windows.
   (keymap-global-set "C-c w p" (lambda () (interactive) (other-window -1)))
   (keymap-global-set "C-c w b" (lambda () (interactive) (other-window -1)))
 #+end_src
+*** MacOS Bindings
+#+begin_src emacs-lisp
+  (setq mac-option-key-is-meta t)
+#+end_src
 
 ** Setup Line Numbers
 *** Always show line numbers
@@ -553,7 +557,7 @@ Automatically generate a table of contents for an Org file.
   (add-hook 'org-mode-hook 'org-indent-mode)
 #+end_src
 
-** Bullet Headers 
+** Bullet Headers
 Stylize Org Mode headers with Nerd Icons.
 #+begin_src emacs-lisp
   (use-package org-bullets
@@ -889,6 +893,18 @@ Functionally Scottish.
     :hook
     (haskell-mode . lsp))
 #+end_src
+*** Kotlin
+Jetbrains had enough of Java.
+#+begin_src emacs-lisp
+  (use-package kotlin-ts-mode
+    :config
+    (add-hook 'kotlin-ts-mode-hook 'lsp)
+
+    (add-to-list 'auto-mode-alist '("\\.kt\\'" . kotlin-ts-mode)))
+
+  ;; Java Support
+  (use-package lsp-java)
+#+end_src
 *** LISP
 Programming for Programmers.
 #+begin_src emacs-lisp
@@ -925,7 +941,12 @@ A simple Python-like language with many implementations.
   (add-hook 'lua-mode-hook 'lua-abbrev-mode-off)
   (setq save-abbrevs nil)   ;; is this still needed?
 #+end_src
-*** OCaml
+*** Nix
+The deterministic package manager.
+#+begin_src emacs-lisp
+  (use-package nix-mode)
+#+end_src
+*** COMMENT OCaml
 Installed with OPAM
 #+begin_src emacs-lisp
   (setenv "PATH" (concat (concat
@@ -944,6 +965,7 @@ Installed with OPAM
   (require 'utop)
 #+end_src
 *** Typescript
+Embrace, Extend, Exstinguish, Eich.
 #+begin_src emacs-lisp
   (setenv "PATH" (concat (concat
                           (concat (expand-file-name "~/.bun/bin") ":")
@@ -1009,7 +1031,7 @@ A powerful auto-completion utility.
 
     ;; Bind M-/ to company-complete
     (define-key global-map (kbd "M-/") 'company-complete)
-    (define-key global-map (kbd "M-?") 'dabbrev-expand)  
+    (define-key global-map (kbd "M-?") 'dabbrev-expand)
     :hook
     (prog-mode . company-mode))
 
@@ -1086,7 +1108,7 @@ Syntax checking for Emacs.
 #+end_src
 
 * User Interface
-** Add Nerd Icons 
+** Add Nerd Icons
 Use Icons from Nerd Font to add a little modern spice to Emacs.
 #+begin_src emacs-lisp
   (use-package nerd-icons
@@ -1108,7 +1130,7 @@ Set font for both Monospace and Proportional text.
 #+begin_src emacs-lisp
   (defvar fontconf
       '((font . "Aporetic Sans Mono")
-        (size . 11)))
+        (size . 15)))
 
     (set-face-attribute 'variable-pitch nil
             :font (cdr (assoc 'font fontconf))
@@ -1193,13 +1215,13 @@ Set the theme to a nice dark one.
 
   (add-hook 'emacs-startup-hook
             (lambda ()
-              (load-theme 'kaolin-light t)))
+              (load-theme 'kaolin-dark t)))
 
   (defun theme-toggle ()
     "Toggle between two Emacs themes: doom-one and doom-dracula."
     (interactive)
-    (let ((theme-a 'kaolin-light)
-          (theme-b 'kaolin-dark))
+    (let ((theme-a 'kaolin-dark)
+          (theme-b 'kaolin-light))
       (cond
        ((member theme-a custom-enabled-themes)
         (disable-theme theme-a)
@@ -1215,7 +1237,7 @@ Set the theme to a nice dark one.
 *** Disable Extra GUI Features
 Disable GUI features to simplify frames.
 #+begin_src emacs-lisp
-  (menu-bar-mode -1)
+  ;;(menu-bar-mode -1)
   (tool-bar-mode -1)
   (scroll-bar-mode -1)
   (setq inhibit-startup-screen t)
@@ -1231,6 +1253,12 @@ Reduce fringe size to 1px.
 #+begin_src emacs-lisp
   (set-fringe-mode 1)
 #+end_src
+*** MacOS Style
+#+begin_src emacs-lisp
+  (use-package ns-auto-titlebar
+    :config
+    (when (eq system-type 'darwin) (ns-auto-titlebar-mode)))
+#+end_src
 
 ** Zen Mode
 Center the edtior with Olivetti for distraction-free editing.
diff --git a/.emacs.d/early-init.el b/.emacs.d/early-init.el
index b80a729..40200af 100644
--- a/.emacs.d/early-init.el
+++ b/.emacs.d/early-init.el
@@ -1,3 +1,9 @@
+(setenv "LIBRARY_PATH"
+	(string-join
+	 '("/opt/homebrew/opt/gcc/lib/gcc/13"
+	   "/opt/homebrew/opt/libgccjit/lib/gcc/13"
+	   "/opt/homebrew/opt/gcc/lib/gcc/13/gcc/aarch64-apple-darwin22/13")
+	 ":"))
 (setq gc-cons-threshold 100000000)
 (setq read-process-output-max (* 1024 1024))
 (setenv "LSP_USE_PLISTS" "true")