diff options
| author | Craig Jennings <c@cjennings.net> | 2025-10-12 11:47:26 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-10-12 11:47:26 -0500 |
| commit | 092304d9e0ccc37cc0ddaa9b136457e56a1cac20 (patch) | |
| tree | ea81999b8442246c978b364dd90e8c752af50db5 /init.el | |
changing repositories
Diffstat (limited to 'init.el')
| -rw-r--r-- | init.el | 142 |
1 files changed, 142 insertions, 0 deletions
diff --git a/init.el b/init.el new file mode 100644 index 00000000..bb7d714e --- /dev/null +++ b/init.el @@ -0,0 +1,142 @@ +;;; init.el --- Emacs Init File -*- lexical-binding: t; coding: utf-8; -*- +;; author: Craig Jennings <c@cjennings.net> + +;;; Commentary: + +;; Note: This init.el file has an early-init.el file associated with it. +;; That file defines a few variables and settings used within the rest of the config. + +;;; Code: + +(add-to-list 'load-path (concat user-emacs-directory "assets/")) +(add-to-list 'load-path (concat user-emacs-directory "custom/")) +(add-to-list 'load-path (concat user-emacs-directory "modules/")) + +;; ---------------------------- System Configuration --------------------------- + +;;(require 'config-utilities) ;; enable for extra Emacs config debug helpers +(require 'user-constants) ;; paths for files referenced in this config +(require 'host-environment) ;; convenience functions re: host environment +(require 'system-defaults) ;; native comp; log; unicode, backup, exec path +(require 'keybindings) ;; system-wide keybindings and keybinding discovery + +;; -------------------------- Utilities And Libraries -------------------------- + +(require 'media-utils) ;; download and play urls +(require 'custom-functions) ;; custom function library w/ keybindings +(require 'external-open) ;; files to open outside of Emacs + +;; ------------------------- System Level Functionality ------------------------ + +(require 'auth-config) ;; emacs gnupg integration +(require 'keyboard-macros) ;; keyboard macro management +(require 'system-utils) ;; timers, process monitor +(require 'text-config) ;; text settings and functionality +(require 'undead-buffers) ;; bury rather than kill specific buffers + +;; ------------------------ User Interface Configuration ----------------------- + +(require 'ui-config) ;; transparency, cursor color, icons, &c. +(require 'ui-theme) ;; themes and theme persistency +(require 'ui-navigation) ;; the movement and navigation of windows +(require 'font-config) ;; font and emoji configuration +(require 'selection-framework) ;; menu config +(require 'modeline-config) ;; modeline (status-bar) config + +;; ----------------- Emacs Built-In Functionality Configuration ---------------- + +(require 'chrono-tools) ;; calendar, world clock, timers +(require 'diff-config) ;; diff and merge functionality w/in Emacs +(require 'erc-config) ;; seamless IRC client +(require 'eshell-vterm-config) ;; shell and terminal configuration +(require 'help-utils) ;; search: arch-wiki, devdoc, tldr, wikipedia +(require 'help-config) ;; info, man, help config +(require 'tramp-config) ;; remote shell connections + +;; ---------------------- Added Features And Integrations ---------------------- + +(require 'calibredb-epub-config) ;; ebook reader/manager settings +(require 'dashboard-config) ;; the nice landing page with links +(require 'dirvish-config) ;; file manager configuration +(require 'dwim-shell-config) ;; shell commands brought to dirvish/dired +(require 'elfeed-config) ;; feed reader and podcast player/downloader +(require 'eww-config) ;; text mode web browsing, w/o javascript +(require 'flyspell-and-abbrev) ;; spell check and auto-correct +(require 'httpd-config) +(require 'latex-config) ;; WIP need to fix +(require 'mail-config) ;; email using mu4e and org-msg +(require 'markdown-config) +(require 'pdf-config) ;; pdf display settings +(require 'show-kill-ring) ;; displays and facilitates pasting from history +(require 'video-audio-recording) ;; desktop and/or audio recording via ffmpeg +(require 'weather-config) ;; utility to display the weather + +;; -------------------------------- Programming -------------------------------- + +(require 'prog-general) ;; general programming functionality/settings +(require 'test-runner) +(require 'vc-config) ;; version control packages and keybindings +(require 'flycheck-config) ;; linting for all languages including human ones +(require 'prog-lsp) +(require 'prog-training) +(require 'prog-c) +(require 'prog-go) +(require 'prog-lisp) +(require 'prog-shell) ;; combine elsewhere +(require 'prog-python) +(require 'prog-webdev) +(require 'prog-yaml) + +;; ---------------------------------- Org Mode --------------------------------- + +(require 'org-config) ;; basic org-mode settings +(require 'org-agenda-config) ;; agenda, task tracking, and notifications +(require 'org-babel-config) ;; org-mode prog blocks; literate programming +(require 'org-capture-config) +(require 'org-contacts-config) ;; fully integrated org-mode contacts management +(require 'org-drill-config) +(require 'org-export-config) +(require 'org-gcal-config) +(require 'org-refile-config) ;; refile org-branches +(require 'org-roam-config) ;; personal knowledge management in org mode +(require 'org-webclipper) ;; "instapaper" to org-roam workflow + +;; -------------------------- AI Integration And Tools ------------------------- + +(require 'ai-config) ;; LLM integration with GPTel and friends + +(with-eval-after-load 'gptel + (add-to-list 'load-path "~/.emacs.d/gptel-tools") + ;; Buffer Tools + (require 'read_buffer) + ;; Filesystem Tools + (require 'read_text_file) + (require 'write_text_file) +;; (require 'update_text_file) ;; BUG: issues with this tool + (require 'list_directory_files) + (require 'move_to_trash) + ;; Web Tools + (require 'fetch_page)) + +;; ------------------------- Personal Workflow Related ------------------------- + +(require 'reconcile-open-repos) +(require 'local-repository) + +;; ------------------------------- Entertainment ------------------------------- + +(require 'eradio-config) +(require 'games-config) +(require 'music-config) + +;; ---------------------------------- Wrap Up ---------------------------------- + +(require 'wrap-up) + +;; ------------------------------ Modules In Test ------------------------------ +(require 'wip) +(require 'org-noter-config) +;;(require 'lipsum-generator) +;;(require 'jumper) + +;;; init.el ends here |
