(require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) (setopt line-number-mode t) (setq display-line-numbers 'relative) (set-frame-font "Maple Mono NF CN-11:style=Regular" nil t) (use-package which-key :ensure t :config (which-key-mode)) (use-package emacs :config (setq major-mode-remap-alist '((yaml-mode . yaml-ts-mode) (toml-mode . toml-ts-mode) (bash-mode . bash-ts-mode) (json-mode . json-ts-mode) (css-mode . css-ts-mode))) ;; for emacs-macport, use alt as meta instead of command (setq mac-command-modifier 'super ns-command-modifier 'super mac-option-modifier 'meta ns-option-modifier 'meta mac-right-option-modifier 'none ns-right-option-modifier 'none) :hook ;; Auto parenthesis matching ((prog-mode . electric-pair-mode) (compilation-filter . ansi-color-compilation-filter))) (use-package project :custom (when (>= emacs-major-version 30) (project-mode-line t))) (use-package eat :ensure t :config (eat-eshell-mode) (eat-eshell-visual-command-mode)) (use-package direnv :ensure t :custom (direnv-always-show-summary nil) :config (direnv-mode)) (use-package eglot :ensure t) (use-package paredit :ensure t :hook (emacs-lisp-mode asm-mode)) (use-package web-mode :ensure t :mode (("\\.HTML\\'" . web-mode) ("\\.css\\'" . web-mode) ("\\.svelte" . web-mode)) :custom (web-mode-markup-indent-offset 2) (web-mode-css-indent-offset 2) (web-mode-code-indent-offset 2)) (use-package emmet-mode :ensure t :hook ((web-mode . emmet-mode))) (use-package magit :ensure t) (use-package rust-mode :ensure t :hook (rust-mode . eglot-ensure)) (use-package hl-line-mode ;; use the builtin current-line highlighter :hook ((prog-mode) (text-mode) (org-agenda-mode))) (use-package flyspell-mode ;; https://www.emacswiki.org/emacs/FlySpell :hook ((text-mode . flyspell-mode) (prog-mode . flyspell-prog-mode))) (use-package emacs :hook ((before-save . delete-trailing-whitespace)) :bind (("s-SPC" . cycle-spacing)) :custom (use-short-answers t) (dired-listing-switches "-AL --group-directories-first") (tab-width 2) (custom-file (concat user-emacs-directory "custom.el")) (display-line-numbers 'relative) (backup-directory-alist '(("." . "~/.ema:Cs.d/backups"))) (auto-save-default nil) :config (when (file-exists-p custom-file) (load custom-file)) (set-scroll-bar-mode nil) (setq-default indent-tabs-mode t) (load-theme 'noctalia t) (electric-indent-mode +1) (setq ido-enable-flex-matching t) (setq ido-everywhere t) (fido-vertical-mode))