init.el (9074B)
1 ;;; init.el -*- lexical-binding: t; -*- 2 3 ;; This file controls what Doom modules are enabled and what order they load 4 ;; in. Remember to run 'doom sync' after modifying it! 5 6 ;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's 7 ;; documentation. There you'll find a "Module Index" link where you'll find 8 ;; a comprehensive list of Doom's modules and what flags they support. 9 10 ;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or 11 ;; 'C-c c k' for non-vim users) to view its documentation. This works on 12 ;; flags as well (those symbols that start with a plus). 13 ;; 14 ;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its 15 ;; directory (for easy access to its source code). 16 17 (doom! :input 18 ;;chinese 19 ;;japanese 20 ;;layout ; auie,ctsrnm is the superior home row 21 22 :completion 23 (company +childframe) ; the ultimate code completion backend 24 ;;helm ; the *other* search engine for love and life 25 ;;ido ; the other *other* search engine... 26 ivy ; a search engine for love and life 27 28 :ui 29 deft ; notational velocity for Emacs 30 doom ; what makes DOOM look the way it does 31 ;; doom-dashboard ; a nifty splash screen for Emacs 32 ;; doom-quit ; DOOM quit-message prompts when you quit Emacs 33 ;;fill-column ; a `fill-column' indicator 34 hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW 35 ;;hydra 36 ;;indent-guides ; highlighted indent columns 37 ;;ligatures ; ligatures and symbols to make your code pretty again 38 ;;minimap ; show a map of the code on the side 39 modeline ; snazzy, Atom-inspired modeline, plus API 40 ;;nav-flash ; blink cursor line after big motions 41 ;;neotree ; a project drawer, like NERDTree for vim 42 ophints ; highlight the region an operation acts on 43 (popup +defaults) ; tame sudden yet inevitable temporary windows 44 ;;tabs ; a tab bar for Emacs 45 ;;treemacs ; a project drawer, like neotree but cooler 46 ;;unicode ; extended unicode support for various languages 47 vc-gutter ; vcs diff in the fringe 48 vi-tilde-fringe ; fringe tildes to mark beyond EOB 49 ;;window-select ; visually switch windows 50 workspaces ; tab emulation, persistence & separate workspaces 51 ;;zen ; distraction-free coding or writing 52 53 :editor 54 (evil +everywhere); come to the dark side, we have cookies 55 file-templates ; auto-snippets for empty files 56 fold ; (nigh) universal code folding 57 ;;(format +onsave) ; automated prettiness 58 ;;god ; run Emacs commands without modifier keys 59 ;;lispy ; vim for lisp, for people who don't like vim 60 ;;multiple-cursors ; editing in many places at once 61 ;;objed ; text object editing for the innocent 62 ;;parinfer ; turn lisp into python, sort of 63 ;;rotate-text ; cycle region at point between text candidates 64 snippets ; my elves. They type so I don't have to 65 ;;word-wrap ; soft wrapping with language-aware indent 66 67 :emacs 68 dired ; making dired pretty [functional] 69 electric ; smarter, keyword-based electric-indent 70 ;;ibuffer ; interactive buffer management 71 undo ; persistent, smarter undo for your inevitable mistakes 72 vc ; version-control and Emacs, sitting in a tree 73 74 :term 75 ;;eshell ; the elisp shell that works everywhere 76 ;;shell ; simple shell REPL for Emacs 77 ;;term ; basic terminal emulator for Emacs 78 ;;vterm ; the best terminal emulation in Emacs 79 80 :checkers 81 syntax ; tasing you for every semicolon you forget 82 ;;spell ; tasing you for misspelling mispelling 83 ;;grammar ; tasing grammar mistake every you make 84 85 :tools 86 ;;ansible 87 ;;debugger ; FIXME stepping through code, to help you add bugs 88 ;;direnv 89 ;;docker 90 ;;editorconfig ; let someone else argue about tabs vs spaces 91 ;;ein ; tame Jupyter notebooks with emacs 92 (eval +overlay) ; run code, run (also, repls) 93 ;;gist ; interacting with github gists 94 lookup ; navigate your code and its documentation 95 ;;lsp 96 magit ; a git porcelain for Emacs 97 ;;make ; run make tasks from Emacs 98 ;;pass ; password manager for nerds 99 ;;pdf ; pdf enhancements 100 ;;prodigy ; FIXME managing external services & code builders 101 ;;rgb ; creating color strings 102 ;;taskrunner ; taskrunner for all your projects 103 ;;terraform ; infrastructure as code 104 ;;tmux ; an API for interacting with tmux 105 ;;upload ; map local to remote projects via ssh/ftp 106 107 :os 108 (:if IS-MAC macos) ; improve compatibility with macOS 109 ;;tty ; improve the terminal Emacs experience 110 111 :lang 112 ;;agda ; types of types of types of types... 113 ;;cc ; C/C++/Obj-C madness 114 ;;clojure ; java with a lisp 115 ;;common-lisp ; if you've seen one lisp, you've seen them all 116 ;;coq ; proofs-as-programs 117 ;;crystal ; ruby at the speed of c 118 ;;csharp ; unity, .NET, and mono shenanigans 119 ;;data ; config/data formats 120 ;;(dart +flutter) ; paint ui and not much else 121 ;;elixir ; erlang done right 122 ;;elm ; care for a cup of TEA? 123 emacs-lisp ; drown in parentheses 124 ;;erlang ; an elegant language for a more civilized age 125 ;;ess ; emacs speaks statistics 126 ;;faust ; dsp, but you get to keep your soul 127 ;;fsharp ; ML stands for Microsoft's Language 128 ;;fstar ; (dependent) types and (monadic) effects and Z3 129 ;;gdscript ; the language you waited for 130 ;;(go +lsp) ; the hipster dialect 131 ;;(haskell +dante) ; a language that's lazier than I am 132 ;;hy ; readability of scheme w/ speed of python 133 ;;idris ; 134 ;;json ; At least it ain't XML 135 ;;(java +meghanada) ; the poster child for carpal tunnel syndrome 136 ;;javascript ; all(hope(abandon(ye(who(enter(here)))))) 137 ;;julia ; a better, faster MATLAB 138 ;;kotlin ; a better, slicker Java(Script) 139 ;;latex ; writing papers in Emacs has never been so fun 140 ;;lean 141 ;;factor 142 ;;ledger ; an accounting system in Emacs 143 ;;lua ; one-based indices? one-based indices 144 markdown ; writing docs for people to ignore 145 ;;nim ; python + lisp at the speed of c 146 ;;nix ; I hereby declare "nix geht mehr!" 147 ;;ocaml ; an objective camel 148 (org +journal) ; organize your plain life in plain text 149 ;;php ; perl's insecure younger brother 150 ;;plantuml ; diagrams for confusing people more 151 ;;purescript ; javascript, but functional 152 ;;python ; beautiful is better than ugly 153 ;;qt ; the 'cutest' gui framework ever 154 ;;racket ; a DSL for DSLs 155 ;;raku ; the artist formerly known as perl6 156 ;;rest ; Emacs as a REST client 157 ;;rst ; ReST in peace 158 ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} 159 ;;rust ; Fe2O3.unwrap().unwrap().unwrap().unwrap() 160 ;;scala ; java, but good 161 ;;scheme ; a fully conniving family of lisps 162 sh ; she sells {ba,z,fi}sh shells on the C xor 163 ;;sml 164 ;;solidity ; do you need a blockchain? No. 165 ;;swift ; who asked for emoji variables? 166 ;;terra ; Earth and Moon in alignment for performance. 167 ;;web ; the tubes 168 ;;yaml ; JSON, but readable 169 170 :email 171 ;;(mu4e +gmail) 172 ;;notmuch 173 ;;(wanderlust +gmail) 174 175 :app 176 ;;calendar 177 ;;irc ; how neckbeards socialize 178 ;;(rss +org) ; emacs as an RSS reader 179 ;;twitter ; twitter client https://twitter.com/vnought 180 181 :config 182 ;;literate 183 (default +bindings +smartparens))