* Major Modes I use quite a few major modes. Mostly those using tree-sitter; Which should be selected automatically. As most of these are pretty straight forward I won't bother with an explanation on each. #+begin_src emacs-lisp ;; Markdown (use-package markdown-mode :ensure t :mode ("\\.md\\'" . gfm-mode) :init (setq markdown-command "multimarkdown") :bind (:map markdown-mode-map ("C-c C-e" . markdown-do))) (use-package slint-mode :defer t :config (add-to-list 'auto-mode-alist '("\\.slint\\'" . slint-mode))) (use-package zig-mode :defer t :config (add-to-list 'auto-mode-alist '("\\.\\(zig\\|zon\\)\\'" . zig-mode))) (use-package rainbow-mode :commands (rainbow-mode)) ;; Clojure (use-package clojure-ts-mode :ensure t :hook ((clojure-ts-mode . cider-mode) (clojure-ts-mode . rainbow-delimiters-mode) (clojure-ts-mode . clj-refactor-mode))) ;; Gleam (use-package gleam-ts-mode :mode (rx ".gleam" eos)) (use-package cider :ensure t :defer t) (use-package inf-elixir :defer t) ;; Go (use-package go-mode :demand t :mode "\\.go\\'") ;; Meson (use-package meson-mode :demand t :mode "\\.build\\'") ;; rust-mode (use-package rust-mode :ensure t :init (setq rust-mode-treesitter-derive t)) (use-package rustic :ensure (:host github :repo "emacs-rustic/rustic") :after (rust-ts-mode) :config (setq rustic-cargo-clippy-trigger-fix 'on-compile rustic-rustfmt-args "+nightly")) ;; Scheme (use-package geiser-chez :ensure t) #+end_src