commit a56929028d5e8e9987a0daa8ed687b6b0370de04 Author: cake Date: Sun Mar 9 11:32:40 2025 +0100 FEAT: Initial Push diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8b227c7 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +.cache +eln-cache +elpa +tree-sitter/ +auto-save-list +transient +.lsp-session +.lsp-session-v1 +recentf diff --git a/custom.el b/custom.el new file mode 100644 index 0000000..5fe1572 --- /dev/null +++ b/custom.el @@ -0,0 +1,13 @@ +;;; -*- lexical-binding: t -*- +(custom-set-variables + ;; custom-set-variables was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(package-selected-packages nil)) +(custom-set-faces + ;; custom-set-faces was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + ) diff --git a/early-init.el b/early-init.el new file mode 100644 index 0000000..dc2a311 --- /dev/null +++ b/early-init.el @@ -0,0 +1,8 @@ +(setq default-frame-alist '( + ;; Setting the face in here prevents flashes of + ;; color as the theme gets activated + (background-color . "#000000") + (ns-appearance . dark) + (ns-transparent-titlebar . t))) + + diff --git a/init.el b/init.el new file mode 100644 index 0000000..5fed7c3 --- /dev/null +++ b/init.el @@ -0,0 +1,72 @@ +(setq custom-file (expand-file-name "custom.el" user-emacs-directory)) +(load custom-file) + +(require 'package) +(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) + +;; THEMES +(use-package doom-themes :ensure t :config (load-theme 'doom-dracula t)) +(use-package doom-modeline :ensure t :hook (after-init . doom-modeline-mode)) +(use-package all-the-icons :ensure t) +(use-package dashboard + :ensure t + :config + (setq dashboard-banner-logo-title "Sweetmacs !") + (setq dashboard-startup-banner 'logo) + + (setq dashboard-set-heading-icons t) + (setq dashboard-set-file-icons t) + (setq dashboard-set-footer nil) + (dashboard-setup-startup-hook)) + +;; UI +(use-package company :ensure t :config (global-company-mode t)) +(use-package treemacs :ensure t) + +;; EVIL +(use-package evil :ensure t :init (setq evil-want-keybinding nil) :config (evil-mode t)) +(use-package evil-collection :ensure t :config (evil-collection-init)) +(use-package treemacs-evil + :after (treemacs evil) + :ensure t) + +;; LSP +(use-package lsp-mode + :ensure t + :config (lsp-mode t)) +(use-package lsp-ui + :ensure t + :after lsp-mode) +(use-package company-quickhelp + :ensure t + :after company + :hook (company-mode . company-quickhelp-mode) + :config) +(use-package magit :ensure t) + +;; MODES +(use-package rust-mode + :ensure t + :hook (rust-mode . lsp) + :init + (setq rust-mode-treesitter-derive t)) +(use-package astro-ts-mode :ensure t) + +;; OTHER +(use-package treemacs-projectile + :after (treemacs projectile) + :ensure t) + +;; E-GEX configuration +(use-package emacs :init (setq inhibit-startup-message t) + :config + (set-frame-font "jetbrains mono 12" nil t) + (menu-bar-mode 0) + (tool-bar-mode 0) + (set-scroll-bar-mode nil) + (setq treesit-language-source-alist + '((astro "https://github.com/virchau13/tree-sitter-astro") + (css "https://github.com/tree-sitter/tree-sitter-css") + (tsx "https://github.com/tree-sitter/tree-sitter-typescript" "master" "tsx/src") + (typescript "https://github.com/tree-sitter/tree-sitter-typescript" "master" "typescript/src")))) +