* Looks ** Font #+begin_src emacs-lisp (set-frame-font "FiraCode 16" nil t) (set-fontset-font t '(#x1f000 . #x1faff) (font-spec :family "Myne Noto Color Emoji")) #+end_src ** Themes #+begin_src emacs-lisp (use-package afternoon-theme :ensure t :config ;;(load-theme 'afternoon t) ) (use-package modus-themes :ensure t :config (load-theme 'modus-operandi t) ) #+end_src ** UI *** Split vertical defaul #+begin_src emacs-lisp (setq split-width-threshold nil) #+end_src *** Lines Numbers #+begin_src emacs-lisp (global-display-line-numbers-mode) (setq display-line-numbers-type 'relative) #+end_src *** Dashboard Set up some config functions Configure layout #+begin_src emacs-lisp (defun setup-dashboard-looks () "Config ideas https://github.com/emacs-dashboard/emacs-dashboard" (evil-define-key 'normal dashboard-mode-map (kbd "r") 'dashboard-section-1) (evil-define-key 'normal dashboard-mode-map (kbd "J") 'dashboard-next-section) (evil-define-key 'normal dashboard-mode-map (kbd "K") 'dashboard-previous-section) (setq dashboard-startup-banner "~/.emacs.d/OnePiece.gif") (setq dashboard-banner-logo-title "Lets get coddiinnngggg") (setq dashboard-show-shortcuts t) (setq dashboard-items '((recents . 5) (projects . 5))) (setq dashboard-item-names '(("Recent Files:" . "💫 Recent Files, probably not decent:") ("Projects:" . "Projects 🆓, probably also not decent:"))) ;; Curently broken ☣️ (setq dashboard-center-content nil) ;;(setq dashboard-set-heading-icons t) ;;(setq dashboard-set-file-icons t) (setq dashboard-footer-messages '("Sleepyyyyy 🥱" "Uhhhh I am lost" "🆓 Just go watch anime 🆓" "Compiler Error ☣️ Upssss!" "❤️ Its Coddiinnnng timee")) ) #+end_src Evil dashboard setup #+begin_src emacs-lisp (defun dashboard-load-function () (interactive) (dashboard-next-section 1)) (defun evil-dashboard-setup () (setup-dashboard-looks) (add-hook 'dashboard-mode-hook 'dashboard-load-function)) #+end_src #+begin_src emacs-lisp (use-package dashboard :ensure t :after (evil) :config (evil-dashboard-setup) (dashboard-setup-startup-hook)) #+end_src *** Ivy #+begin_src emacs-lisp (use-package ivy :ensure t :config (ivy-mode)) #+end_src Consel #+begin_src emacs-lisp (use-package counsel :ensure t :config (counsel-mode)) #+end_src *** Which key #+begin_src emacs-lisp (use-package which-key :ensure t :config (which-key-mode)) #+end_src *** Disable Window Top bar #+begin_src emacs-lisp (menu-bar-mode -1) (tool-bar-mode -1) #+end_src * Settings ** Backup files #+begin_src emacs-lisp (setq backup-directory-alist '(("." . "/tmp/")) auto-save-file-name-transforms '((".*" "/tmp/" t))) #+end_src * Evil ** Base Functions #+begin_src emacs-lisp (defun my-evil-quit (old-fun &rest args) (if (eq major-mode 'org-src-mode) (org-edit-src-exit) (apply old-fun args))) (defun my-evil-save (old-fun &rest args) (if (eq major-mode 'org-src-mode) (org-edit-src-save) (apply old-fun args))) (advice-add #'evil-save :around #'my-evil-save) (advice-add #'evil-quit :around #'my-evil-quit) #+end_src ** Base *** Configure #+begin_src emacs-lisp (defun setup-evil-mode () (evil-define-key 'insert global-map (kbd "C-SPC") 'company-complete) ) #+end_src *** Install #+begin_src emacs-lisp (use-package evil :ensure :after (evil-leader) :config (setup-evil-mode) (evil-mode 1)) #+end_src ** Leader #+begin_src emacs-lisp (use-package evil-leader :ensure t :config (global-evil-leader-mode) ; Set leader (evil-leader/set-leader "") (evil-leader/set-key "f" 'find-file "g" 'magit "d" 'dired "c" '("config" . (keymap)) "cf" '("config file" . (lambda ()(interactive) (find-file (expand-file-name "~/.emacs.d/settings.org"))))) (evil-leader/set-key-for-mode 'org-mode "is" 'org-insert-structure-template) (evil-leader/set-key-for-mode 'org-mode "e" 'org-edit-src-code) ) #+end_src ** Org Mode #+begin_src emacs-lisp (use-package evil-org :ensure t :after (org evil) :hook (org-mode . evil-org-mode)) #+end_src * Projects ** Projectile #+begin_src emacs-lisp (use-package projectile :ensure t :config (projectile-mode +1) (define-key projectile-mode-map (kbd "C-p") 'projectile-command-map)) #+end_src ** Magit #+begin_src emacs-lisp (use-package magit :ensure t) #+end_src Auto complete ** Company #+begin_src emacs-lisp (use-package company :ensure t :config (global-company-mode)) #+end_src ** LSP