diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 238 |
1 files changed, 0 insertions, 238 deletions
diff --git a/README.md b/README.md index f0e7217..608d9f8 100644 --- a/README.md +++ b/README.md | |||
@@ -1,96 +1,10 @@ | |||
1 | 1 | ||
2 | # Table of Contents | ||
3 | |||
4 | 1. [Preamble](#org0bff216) | ||
5 | 2. [License](#orged58376) | ||
6 | 3. [Bootstrap](#org4c40f13) | ||
7 | 1. [Tangling](#orgdd48fb7) | ||
8 | 4. [Early initiation](#orgf06a67b) | ||
9 | 1. [Preamble](#org790f346) | ||
10 | 2. [Computers](#org27a9d06) | ||
11 | 3. [Package management](#org982c51d) | ||
12 | 1. [At work, Git's in a weird place](#org1d43543) | ||
13 | 2. [straight.el](#orgc3c01af) | ||
14 | 3. [use-package](#org75b502f) | ||
15 | 5. [Begin init.el](#orge258966) | ||
16 | 6. [Macros](#org429e2c9) | ||
17 | 1. [cuss](#org98b79c1) | ||
18 | 7. [Files](#orgef614d8) | ||
19 | 1. [Keep .emacs.d tidy](#orgcd98663) | ||
20 | 2. [Customize](#orgfa8ddd8) | ||
21 | 3. [Encoding](#org7d9d257) | ||
22 | 4. [Recent files](#org5a20cd6) | ||
23 | 5. [Backups](#org48971aa) | ||
24 | 6. [Autosave](#org3243bbe) | ||
25 | 7. [Save places](#org1ad3687) | ||
26 | 8. [Save history](#orge49f590) | ||
27 | 8. [User interface](#orgbaf79a4) | ||
28 | 1. [Look](#org57b0df2) | ||
29 | 1. [Frames and windows](#org7eea925) | ||
30 | 2. [Buffers](#orgb767f7c) | ||
31 | 3. [Cursor](#org8983905) | ||
32 | 4. [Interactivity](#org62c9668) | ||
33 | 5. [Miscellaneous](#org1ea822c) | ||
34 | 2. [Themes: Modus](#org677f380) | ||
35 | 1. [Change themes based on time of day](#orgb821d6f) | ||
36 | 2. [Disable the current theme when a theme is interactively loaded](#org5e81fc5) | ||
37 | 3. [Modeline: smart-mode-line](#org8ab1e2a) | ||
38 | 4. [Fonts](#org31ee2e5) | ||
39 | 1. [Ligatures](#org77dea9d) | ||
40 | 2. [Unicode fonts](#orgcda6a3b) | ||
41 | 9. [Editing](#org14ea5cc) | ||
42 | 1. [Completion](#org46827ec) | ||
43 | 2. [Ignore case](#orga788d6a) | ||
44 | 3. [Selection & Minibuffer](#org706315a) | ||
45 | 1. [Selectrum & Prescient](#org294ff45) | ||
46 | 4. [Search](#org2c0ce4c) | ||
47 | 1. [CtrlF for searching](#org2ee70e6) | ||
48 | 2. [Visual Regexp](#orgce9fee5) | ||
49 | 5. [Undo](#orgd0935a4) | ||
50 | 6. [Visual editing](#org90fff82) | ||
51 | 1. [`zap-to-char` replacement](#orgaf545a8) | ||
52 | 2. [Operate on a line if there's no current region](#orga6c374d) | ||
53 | 3. [Expand-region](#orgc10cc77) | ||
54 | 4. [Volatile highlights](#orge349e7b) | ||
55 | 5. [Visual line mode](#org2537d6e) | ||
56 | 6. [A better `move-beginning-of-line`](#orgb4e6549) | ||
57 | 7. [Delete the selection when typing](#orga87bcd4) | ||
58 | 8. [Clipboard](#org383042b) | ||
59 | 9. [Tabs & Spaces](#orge8f1064) | ||
60 | 10. [Programming](#org7ebcef6) | ||
61 | 1. [Git](#org9139ba2) | ||
62 | 2. [Code display](#org158c62e) | ||
63 | 1. [Parentheses](#orga6fefd0) | ||
64 | 3. [Line numbers](#orge880bac) | ||
65 | 4. [Languages](#orgd13b98f) | ||
66 | 1. [Shell](#org7b82a1d) | ||
67 | 2. [Lua](#orgfe2fd7e) | ||
68 | 3. [Fennel](#org3000823) | ||
69 | 4. [Web](#org38d26c9) | ||
70 | 5. [SSH config](#org9ae6b0f) | ||
71 | 11. [Writing](#org100f1c7) | ||
72 | 1. [Word count](#orgfbddaf6) | ||
73 | 2. [Visual fill column](#org32c015a) | ||
74 | 3. [Mixed-pitch](#orgcb552ec) | ||
75 | 4. [Org mode](#org3025d5a) | ||
76 | 12. [Applications](#org7eada39) | ||
77 | 1. [Gemini & Gopher](#orgc966a52) | ||
78 | 2. [Pastebin](#orgf849ba8) | ||
79 | 3. [Gnus](#orge75cc1a) | ||
80 | 4. [Nov.el: read Ebooks](#org82ec7aa) | ||
81 | 13. [Machine-specific configurations](#orga88ef69) | ||
82 | |||
83 | |||
84 | |||
85 | <a id="org0bff216"></a> | ||
86 | 2 | ||
87 | # Preamble | 3 | # Preamble |
88 | 4 | ||
89 | I wanted to write my Emacs configuration in [Org mode](https://orgmode.org) for a while, but never could quite figure out how. Finally, I found [Lars Tveito](https://github.com/larstvei/dot-emacs)'s config, which does exactly what I want: `init.el` is small and simple, and replaced after the first run, and `init.org` is automatically tangled. So I'm very excited. | 5 | I wanted to write my Emacs configuration in [Org mode](https://orgmode.org) for a while, but never could quite figure out how. Finally, I found [Lars Tveito](https://github.com/larstvei/dot-emacs)'s config, which does exactly what I want: `init.el` is small and simple, and replaced after the first run, and `init.org` is automatically tangled. So I'm very excited. |
90 | 6 | ||
91 | 7 | ||
92 | <a id="orged58376"></a> | ||
93 | |||
94 | # License | 8 | # License |
95 | 9 | ||
96 | WTFPL. For more info, see `LICENSE`. | 10 | WTFPL. For more info, see `LICENSE`. |
@@ -99,8 +13,6 @@ Probably that's not legal under the terms of the GPL or whatever Emacs is licens | |||
99 | SUE ME, RMS | 13 | SUE ME, RMS |
100 | 14 | ||
101 | 15 | ||
102 | <a id="org4c40f13"></a> | ||
103 | |||
104 | # Bootstrap | 16 | # Bootstrap |
105 | 17 | ||
106 | *Check out Lars's config for the reasoning behind this.* | 18 | *Check out Lars's config for the reasoning behind this.* |
@@ -121,8 +33,6 @@ When this configuration is loaded for the first time, this `init.el` is loaded: | |||
121 | (byte-compile-file (concat user-emacs-directory "init.el")) | 33 | (byte-compile-file (concat user-emacs-directory "init.el")) |
122 | 34 | ||
123 | 35 | ||
124 | <a id="orgdd48fb7"></a> | ||
125 | |||
126 | ## Tangling | 36 | ## Tangling |
127 | 37 | ||
128 | After the first run, the above `init.el` will be replaced by the tangled stuff here. However, when *this* file is edited, we'll need to re-tangle everything. However, nobody has time to do that manually with `C-c C-v t`, *every time*! Luckily, Emacs is highly programmable. | 38 | After the first run, the above `init.el` will be replaced by the tangled stuff here. However, when *this* file is edited, we'll need to re-tangle everything. However, nobody has time to do that manually with `C-c C-v t`, *every time*! Luckily, Emacs is highly programmable. |
@@ -140,15 +50,11 @@ After the first run, the above `init.el` will be replaced by the tangled stuff h | |||
140 | (add-hook 'after-save-hook #'acdw/tangle-init) | 50 | (add-hook 'after-save-hook #'acdw/tangle-init) |
141 | 51 | ||
142 | 52 | ||
143 | <a id="orgf06a67b"></a> | ||
144 | |||
145 | # Early initiation | 53 | # Early initiation |
146 | 54 | ||
147 | Emacs 27.1+ uses `early-init.el`, which is evaluated before things like `package.el` and other stuff. So I have a few settings in there. | 55 | Emacs 27.1+ uses `early-init.el`, which is evaluated before things like `package.el` and other stuff. So I have a few settings in there. |
148 | 56 | ||
149 | 57 | ||
150 | <a id="org790f346"></a> | ||
151 | |||
152 | ## Preamble | 58 | ## Preamble |
153 | 59 | ||
154 | Of course, first thing is the modeline. After that, I set `load-prefer-newer` because, well, it *should*. | 60 | Of course, first thing is the modeline. After that, I set `load-prefer-newer` because, well, it *should*. |
@@ -158,8 +64,6 @@ Of course, first thing is the modeline. After that, I set `load-prefer-newer` b | |||
158 | (setq load-prefer-newer t) | 64 | (setq load-prefer-newer t) |
159 | 65 | ||
160 | 66 | ||
161 | <a id="org27a9d06"></a> | ||
162 | |||
163 | ## Computers | 67 | ## Computers |
164 | 68 | ||
165 | I have to set these constants before bootstrapping the package manager, since `straight.el` depends on Git, and at work, those are in a weird place. | 69 | I have to set these constants before bootstrapping the package manager, since `straight.el` depends on Git, and at work, those are in a weird place. |
@@ -170,15 +74,11 @@ I have to set these constants before bootstrapping the package manager, since `s | |||
170 | (defconst *acdw/at-home* (or *acdw/at-larry* *acdw/at-bax*)) | 74 | (defconst *acdw/at-home* (or *acdw/at-larry* *acdw/at-bax*)) |
171 | 75 | ||
172 | 76 | ||
173 | <a id="org982c51d"></a> | ||
174 | |||
175 | ## Package management | 77 | ## Package management |
176 | 78 | ||
177 | I've started using straight.el, which is great. It grabs packages from git, and apparently will let me fork and edit them, which I'll probably get around to … eventually. | 79 | I've started using straight.el, which is great. It grabs packages from git, and apparently will let me fork and edit them, which I'll probably get around to … eventually. |
178 | 80 | ||
179 | 81 | ||
180 | <a id="org1d43543"></a> | ||
181 | |||
182 | ### At work, Git's in a weird place | 82 | ### At work, Git's in a weird place |
183 | 83 | ||
184 | (when *acdw/at-work* | 84 | (when *acdw/at-work* |
@@ -186,8 +86,6 @@ I've started using straight.el, which is great. It grabs packages from git, and | |||
186 | (add-to-list 'exec-path "C:/Users/aduckworth/Downloads/PortableGit/bin")) | 86 | (add-to-list 'exec-path "C:/Users/aduckworth/Downloads/PortableGit/bin")) |
187 | 87 | ||
188 | 88 | ||
189 | <a id="orgc3c01af"></a> | ||
190 | |||
191 | ### [straight.el](https://github.com/raxod502/straight.el) | 89 | ### [straight.el](https://github.com/raxod502/straight.el) |
192 | 90 | ||
193 | I don't know why, but for some reason the bootstrapping doesn't work on Windows. I have to download the repo directly from github and put it in the right place (`~/.emacs.d/straight/repos/straight.el/`). | 91 | I don't know why, but for some reason the bootstrapping doesn't work on Windows. I have to download the repo directly from github and put it in the right place (`~/.emacs.d/straight/repos/straight.el/`). |
@@ -207,8 +105,6 @@ I don't know why, but for some reason the bootstrapping doesn't work on Windows. | |||
207 | (load bootstrap-file nil 'nomessage)) | 105 | (load bootstrap-file nil 'nomessage)) |
208 | 106 | ||
209 | 107 | ||
210 | <a id="org75b502f"></a> | ||
211 | |||
212 | ### [use-package](https://github.com/jwiegley/use-package) | 108 | ### [use-package](https://github.com/jwiegley/use-package) |
213 | 109 | ||
214 | Yeah, you know it, I know it, we all love it. It's use-package. | 110 | Yeah, you know it, I know it, we all love it. It's use-package. |
@@ -217,21 +113,15 @@ Yeah, you know it, I know it, we all love it. It's use-package. | |||
217 | (straight-use-package 'use-package) | 113 | (straight-use-package 'use-package) |
218 | 114 | ||
219 | 115 | ||
220 | <a id="orge258966"></a> | ||
221 | |||
222 | # Begin init.el | 116 | # Begin init.el |
223 | 117 | ||
224 | ;;; init.el -*- lexical-binding: t; coding: utf-8 -*- | 118 | ;;; init.el -*- lexical-binding: t; coding: utf-8 -*- |
225 | <<tangle-on-save>> | 119 | <<tangle-on-save>> |
226 | 120 | ||
227 | 121 | ||
228 | <a id="org429e2c9"></a> | ||
229 | |||
230 | # Macros | 122 | # Macros |
231 | 123 | ||
232 | 124 | ||
233 | <a id="org98b79c1"></a> | ||
234 | |||
235 | ## cuss | 125 | ## cuss |
236 | 126 | ||
237 | I like `use-package`, but I don't like doing the weird "pseudo-package" stuff a lot of people do in their emacs configs. Partially because I have to set `:straight nil` on a lot of built-in packages, but also because I think being *that* obsessive over one interface through the whole config is … I don't know, short-sighted? | 127 | I like `use-package`, but I don't like doing the weird "pseudo-package" stuff a lot of people do in their emacs configs. Partially because I have to set `:straight nil` on a lot of built-in packages, but also because I think being *that* obsessive over one interface through the whole config is … I don't know, short-sighted? |
@@ -245,21 +135,15 @@ Either way, I *do* like the `:custom` interface that `use-package` has, so I've | |||
245 | ',var ,val))) | 135 | ',var ,val))) |
246 | 136 | ||
247 | 137 | ||
248 | <a id="orgef614d8"></a> | ||
249 | |||
250 | # Files | 138 | # Files |
251 | 139 | ||
252 | 140 | ||
253 | <a id="orgcd98663"></a> | ||
254 | |||
255 | ## [Keep .emacs.d tidy](https://github.com/emacscollective/no-littering) | 141 | ## [Keep .emacs.d tidy](https://github.com/emacscollective/no-littering) |
256 | 142 | ||
257 | (straight-use-package 'no-littering) | 143 | (straight-use-package 'no-littering) |
258 | (require 'no-littering) | 144 | (require 'no-littering) |
259 | 145 | ||
260 | 146 | ||
261 | <a id="orgfa8ddd8"></a> | ||
262 | |||
263 | ## Customize | 147 | ## Customize |
264 | 148 | ||
265 | I don't like the customize interface, but I still sometimes use it when I'm not sure what the name of a variable is. So I save the stuff to a file, I just don't load it or keep track of it. | 149 | I don't like the customize interface, but I still sometimes use it when I'm not sure what the name of a variable is. So I save the stuff to a file, I just don't load it or keep track of it. |
@@ -267,8 +151,6 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
267 | (cuss custom-file (no-littering-expand-etc-file-name "custom.el")) | 151 | (cuss custom-file (no-littering-expand-etc-file-name "custom.el")) |
268 | 152 | ||
269 | 153 | ||
270 | <a id="org7d9d257"></a> | ||
271 | |||
272 | ## Encoding | 154 | ## Encoding |
273 | 155 | ||
274 | (prefer-coding-system 'utf-8-unix) | 156 | (prefer-coding-system 'utf-8-unix) |
@@ -283,8 +165,6 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
283 | (cuss x-select-request-type '(UTF8_STRING COMPOUND_TEXT TEXT STRING)) | 165 | (cuss x-select-request-type '(UTF8_STRING COMPOUND_TEXT TEXT STRING)) |
284 | 166 | ||
285 | 167 | ||
286 | <a id="org5a20cd6"></a> | ||
287 | |||
288 | ## Recent files | 168 | ## Recent files |
289 | 169 | ||
290 | (use-package recentf | 170 | (use-package recentf |
@@ -298,16 +178,12 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
298 | (recentf-mode 1)) | 178 | (recentf-mode 1)) |
299 | 179 | ||
300 | 180 | ||
301 | <a id="org48971aa"></a> | ||
302 | |||
303 | ## Backups | 181 | ## Backups |
304 | 182 | ||
305 | (cuss backup-directory-alist | 183 | (cuss backup-directory-alist |
306 | `((".*" . ,(no-littering-expand-var-file-name "backup/")))) | 184 | `((".*" . ,(no-littering-expand-var-file-name "backup/")))) |
307 | 185 | ||
308 | 186 | ||
309 | <a id="org3243bbe"></a> | ||
310 | |||
311 | ## [Autosave](https://github.com/bbatsov/super-save) | 187 | ## [Autosave](https://github.com/bbatsov/super-save) |
312 | 188 | ||
313 | (use-package super-save | 189 | (use-package super-save |
@@ -318,8 +194,6 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
318 | (super-save-mode 1)) | 194 | (super-save-mode 1)) |
319 | 195 | ||
320 | 196 | ||
321 | <a id="org1ad3687"></a> | ||
322 | |||
323 | ## [Save places](https://www.emacswiki.org/emacs/SavePlace) | 197 | ## [Save places](https://www.emacswiki.org/emacs/SavePlace) |
324 | 198 | ||
325 | (use-package saveplace | 199 | (use-package saveplace |
@@ -330,8 +204,6 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
330 | (save-place-mode 1)) | 204 | (save-place-mode 1)) |
331 | 205 | ||
332 | 206 | ||
333 | <a id="orge49f590"></a> | ||
334 | |||
335 | ## [Save history](https://www.emacswiki.org/emacs/SaveHist) | 207 | ## [Save history](https://www.emacswiki.org/emacs/SaveHist) |
336 | 208 | ||
337 | (use-package savehist | 209 | (use-package savehist |
@@ -345,18 +217,12 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
345 | (savehist-mode 1)) | 217 | (savehist-mode 1)) |
346 | 218 | ||
347 | 219 | ||
348 | <a id="orgbaf79a4"></a> | ||
349 | |||
350 | # User interface | 220 | # User interface |
351 | 221 | ||
352 | 222 | ||
353 | <a id="org57b0df2"></a> | ||
354 | |||
355 | ## Look | 223 | ## Look |
356 | 224 | ||
357 | 225 | ||
358 | <a id="org7eea925"></a> | ||
359 | |||
360 | ### Frames and windows | 226 | ### Frames and windows |
361 | 227 | ||
362 | 1. Frame defaults | 228 | 1. Frame defaults |
@@ -381,8 +247,6 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
381 | (cuss window-combination-resize t) | 247 | (cuss window-combination-resize t) |
382 | 248 | ||
383 | 249 | ||
384 | <a id="orgb767f7c"></a> | ||
385 | |||
386 | ### Buffers | 250 | ### Buffers |
387 | 251 | ||
388 | (cuss uniquify-buffer-name-style 'forward) | 252 | (cuss uniquify-buffer-name-style 'forward) |
@@ -400,8 +264,6 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
400 | (cuss initial-scratch-message nil) | 264 | (cuss initial-scratch-message nil) |
401 | 265 | ||
402 | 266 | ||
403 | <a id="org8983905"></a> | ||
404 | |||
405 | ### Cursor | 267 | ### Cursor |
406 | 268 | ||
407 | (cuss cursor-type 'bar) | 269 | (cuss cursor-type 'bar) |
@@ -409,8 +271,6 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
409 | (blink-cursor-mode 0) | 271 | (blink-cursor-mode 0) |
410 | 272 | ||
411 | 273 | ||
412 | <a id="org62c9668"></a> | ||
413 | |||
414 | ### Interactivity | 274 | ### Interactivity |
415 | 275 | ||
416 | 1. Mouse | 276 | 1. Mouse |
@@ -430,8 +290,6 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
430 | (fset 'yes-or-no-p #'y-or-n-p) | 290 | (fset 'yes-or-no-p #'y-or-n-p) |
431 | 291 | ||
432 | 292 | ||
433 | <a id="org1ea822c"></a> | ||
434 | |||
435 | ### Miscellaneous | 293 | ### Miscellaneous |
436 | 294 | ||
437 | 1. Convert `^L` to a line | 295 | 1. Convert `^L` to a line |
@@ -441,16 +299,12 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
441 | (global-page-break-lines-mode 1)) | 299 | (global-page-break-lines-mode 1)) |
442 | 300 | ||
443 | 301 | ||
444 | <a id="org677f380"></a> | ||
445 | |||
446 | ## Themes: [Modus](https://github.com/protesilaos/modus-themes) | 302 | ## Themes: [Modus](https://github.com/protesilaos/modus-themes) |
447 | 303 | ||
448 | (use-package modus-operandi-theme) | 304 | (use-package modus-operandi-theme) |
449 | (use-package modus-vivendi-theme) | 305 | (use-package modus-vivendi-theme) |
450 | 306 | ||
451 | 307 | ||
452 | <a id="orgb821d6f"></a> | ||
453 | |||
454 | ### [Change themes](https://github.com/hadronzoo/theme-changer) based on time of day | 308 | ### [Change themes](https://github.com/hadronzoo/theme-changer) based on time of day |
455 | 309 | ||
456 | (use-package theme-changer | 310 | (use-package theme-changer |
@@ -462,8 +316,6 @@ I don't like the customize interface, but I still sometimes use it when I'm not | |||
462 | (change-theme 'modus-operandi 'modus-vivendi)) | 316 | (change-theme 'modus-operandi 'modus-vivendi)) |
463 | 317 | ||
464 | 318 | ||
465 | <a id="org5e81fc5"></a> | ||
466 | |||
467 | ### Disable the current theme when a theme is interactively loaded | 319 | ### Disable the current theme when a theme is interactively loaded |
468 | 320 | ||
469 | This doesn't happen often, but I'll be ready when it does. | 321 | This doesn't happen often, but I'll be ready when it does. |
@@ -473,8 +325,6 @@ This doesn't happen often, but I'll be ready when it does. | |||
473 | (mapc 'disable-theme custom-enabled-themes)) | 325 | (mapc 'disable-theme custom-enabled-themes)) |
474 | 326 | ||
475 | 327 | ||
476 | <a id="org8ab1e2a"></a> | ||
477 | |||
478 | ## Modeline: [smart-mode-line](https://github.com/Malabarba/smart-mode-line) | 328 | ## Modeline: [smart-mode-line](https://github.com/Malabarba/smart-mode-line) |
479 | 329 | ||
480 | (use-package smart-mode-line | 330 | (use-package smart-mode-line |
@@ -496,8 +346,6 @@ I hide all minor-modes by default for a clean modeline. However, I can add them | |||
496 | (mapconcat 'identity rm--whitelist-regexps "\\|"))) | 346 | (mapconcat 'identity rm--whitelist-regexps "\\|"))) |
497 | 347 | ||
498 | 348 | ||
499 | <a id="org31ee2e5"></a> | ||
500 | |||
501 | ## Fonts | 349 | ## Fonts |
502 | 350 | ||
503 | I'm sure there's a better way to do this, but for now, this is the best I've got. I append to the `face-font-family-alternatives` because I don't know what kind of weird magic they're doing in there. | 351 | I'm sure there's a better way to do this, but for now, this is the best I've got. I append to the `face-font-family-alternatives` because I don't know what kind of weird magic they're doing in there. |
@@ -525,8 +373,6 @@ I'm sure there's a better way to do this, but for now, this is the best I've got | |||
525 | :height 130) | 373 | :height 130) |
526 | 374 | ||
527 | 375 | ||
528 | <a id="org77dea9d"></a> | ||
529 | |||
530 | ### Ligatures | 376 | ### Ligatures |
531 | 377 | ||
532 | These cause big problems with cc-mode (as in, totally freezing everything), so I'm going to comment it out. | 378 | These cause big problems with cc-mode (as in, totally freezing everything), so I'm going to comment it out. |
@@ -555,8 +401,6 @@ These cause big problems with cc-mode (as in, totally freezing everything), so I | |||
555 | ;; (global-ligature-mode)) | 401 | ;; (global-ligature-mode)) |
556 | 402 | ||
557 | 403 | ||
558 | <a id="orgcda6a3b"></a> | ||
559 | |||
560 | ### [Unicode fonts](https://github.com/rolandwalker/unicode-fonts) | 404 | ### [Unicode fonts](https://github.com/rolandwalker/unicode-fonts) |
561 | 405 | ||
562 | (use-package persistent-soft) | 406 | (use-package persistent-soft) |
@@ -567,13 +411,9 @@ These cause big problems with cc-mode (as in, totally freezing everything), so I | |||
567 | (unicode-fonts-setup)) | 411 | (unicode-fonts-setup)) |
568 | 412 | ||
569 | 413 | ||
570 | <a id="org14ea5cc"></a> | ||
571 | |||
572 | # Editing | 414 | # Editing |
573 | 415 | ||
574 | 416 | ||
575 | <a id="org46827ec"></a> | ||
576 | |||
577 | ## Completion | 417 | ## Completion |
578 | 418 | ||
579 | I was using company, but I think it might've been causing issues with `awk-mode`, so I'm trying `hippie-mode` right now. So far, I'm also enjoying not having a popup all the time. | 419 | I was using company, but I think it might've been causing issues with `awk-mode`, so I'm trying `hippie-mode` right now. So far, I'm also enjoying not having a popup all the time. |
@@ -581,8 +421,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
581 | (bind-key "M-/" #'hippie-expand) | 421 | (bind-key "M-/" #'hippie-expand) |
582 | 422 | ||
583 | 423 | ||
584 | <a id="orga788d6a"></a> | ||
585 | |||
586 | ## Ignore case | 424 | ## Ignore case |
587 | 425 | ||
588 | (cuss completion-ignore-case t) | 426 | (cuss completion-ignore-case t) |
@@ -590,13 +428,9 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
590 | (cuss read-file-name-completion-ignore-case t) | 428 | (cuss read-file-name-completion-ignore-case t) |
591 | 429 | ||
592 | 430 | ||
593 | <a id="org706315a"></a> | ||
594 | |||
595 | ## Selection & Minibuffer | 431 | ## Selection & Minibuffer |
596 | 432 | ||
597 | 433 | ||
598 | <a id="org294ff45"></a> | ||
599 | |||
600 | ### Selectrum & Prescient | 434 | ### Selectrum & Prescient |
601 | 435 | ||
602 | (use-package selectrum | 436 | (use-package selectrum |
@@ -613,13 +447,9 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
613 | (selectrum-prescient-mode +1)) | 447 | (selectrum-prescient-mode +1)) |
614 | 448 | ||
615 | 449 | ||
616 | <a id="org2c0ce4c"></a> | ||
617 | |||
618 | ## Search | 450 | ## Search |
619 | 451 | ||
620 | 452 | ||
621 | <a id="org2ee70e6"></a> | ||
622 | |||
623 | ### CtrlF for searching | 453 | ### CtrlF for searching |
624 | 454 | ||
625 | (use-package ctrlf | 455 | (use-package ctrlf |
@@ -631,8 +461,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
631 | ("C-s" . ctrlf-forward-regexp)) | 461 | ("C-s" . ctrlf-forward-regexp)) |
632 | 462 | ||
633 | 463 | ||
634 | <a id="orgce9fee5"></a> | ||
635 | |||
636 | ### [Visual Regexp](https://github.com/benma/visual-regexp.el) | 464 | ### [Visual Regexp](https://github.com/benma/visual-regexp.el) |
637 | 465 | ||
638 | (use-package visual-regexp | 466 | (use-package visual-regexp |
@@ -640,8 +468,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
640 | ([remap query-replace] . 'vr/query-replace)) | 468 | ([remap query-replace] . 'vr/query-replace)) |
641 | 469 | ||
642 | 470 | ||
643 | <a id="orgd0935a4"></a> | ||
644 | |||
645 | ## Undo | 471 | ## Undo |
646 | 472 | ||
647 | (use-package undo-fu | 473 | (use-package undo-fu |
@@ -661,13 +487,9 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
661 | (global-undo-fu-session-mode +1)) | 487 | (global-undo-fu-session-mode +1)) |
662 | 488 | ||
663 | 489 | ||
664 | <a id="org90fff82"></a> | ||
665 | |||
666 | ## Visual editing | 490 | ## Visual editing |
667 | 491 | ||
668 | 492 | ||
669 | <a id="orgaf545a8"></a> | ||
670 | |||
671 | ### `zap-to-char` replacement | 493 | ### `zap-to-char` replacement |
672 | 494 | ||
673 | (use-package zop-to-char | 495 | (use-package zop-to-char |
@@ -676,8 +498,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
676 | ([remap zap-up-to-char] . zop-up-to-char)) | 498 | ([remap zap-up-to-char] . zop-up-to-char)) |
677 | 499 | ||
678 | 500 | ||
679 | <a id="orga6c374d"></a> | ||
680 | |||
681 | ### Operate on a line if there's no current region | 501 | ### Operate on a line if there's no current region |
682 | 502 | ||
683 | (use-package whole-line-or-region | 503 | (use-package whole-line-or-region |
@@ -685,8 +505,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
685 | (whole-line-or-region-global-mode +1)) | 505 | (whole-line-or-region-global-mode +1)) |
686 | 506 | ||
687 | 507 | ||
688 | <a id="orgc10cc77"></a> | ||
689 | |||
690 | ### Expand-region | 508 | ### Expand-region |
691 | 509 | ||
692 | (use-package expand-region | 510 | (use-package expand-region |
@@ -695,8 +513,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
695 | ("C-+" . er/contract-region)) | 513 | ("C-+" . er/contract-region)) |
696 | 514 | ||
697 | 515 | ||
698 | <a id="orge349e7b"></a> | ||
699 | |||
700 | ### Volatile highlights | 516 | ### Volatile highlights |
701 | 517 | ||
702 | (use-package volatile-highlights | 518 | (use-package volatile-highlights |
@@ -704,15 +520,11 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
704 | (volatile-highlights-mode 1)) | 520 | (volatile-highlights-mode 1)) |
705 | 521 | ||
706 | 522 | ||
707 | <a id="org2537d6e"></a> | ||
708 | |||
709 | ### Visual line mode | 523 | ### Visual line mode |
710 | 524 | ||
711 | (global-visual-line-mode 1) | 525 | (global-visual-line-mode 1) |
712 | 526 | ||
713 | 527 | ||
714 | <a id="orgb4e6549"></a> | ||
715 | |||
716 | ### A better `move-beginning-of-line` | 528 | ### A better `move-beginning-of-line` |
717 | 529 | ||
718 | (defun my/smarter-move-beginning-of-line (arg) | 530 | (defun my/smarter-move-beginning-of-line (arg) |
@@ -741,35 +553,25 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
741 | (bind-key "C-a" #'my/smarter-move-beginning-of-line) | 553 | (bind-key "C-a" #'my/smarter-move-beginning-of-line) |
742 | 554 | ||
743 | 555 | ||
744 | <a id="orga87bcd4"></a> | ||
745 | |||
746 | ## Delete the selection when typing | 556 | ## Delete the selection when typing |
747 | 557 | ||
748 | (delete-selection-mode 1) | 558 | (delete-selection-mode 1) |
749 | 559 | ||
750 | 560 | ||
751 | <a id="org383042b"></a> | ||
752 | |||
753 | ## Clipboard | 561 | ## Clipboard |
754 | 562 | ||
755 | (cuss save-interprogram-paste-before-kill t) | 563 | (cuss save-interprogram-paste-before-kill t) |
756 | 564 | ||
757 | 565 | ||
758 | <a id="orge8f1064"></a> | ||
759 | |||
760 | ## Tabs & Spaces | 566 | ## Tabs & Spaces |
761 | 567 | ||
762 | (cuss indent-tabs-mode nil) | 568 | (cuss indent-tabs-mode nil) |
763 | (cuss sentence-end-double-space t) | 569 | (cuss sentence-end-double-space t) |
764 | 570 | ||
765 | 571 | ||
766 | <a id="org7ebcef6"></a> | ||
767 | |||
768 | # Programming | 572 | # Programming |
769 | 573 | ||
770 | 574 | ||
771 | <a id="org9139ba2"></a> | ||
772 | |||
773 | ## Git | 575 | ## Git |
774 | 576 | ||
775 | (use-package magit | 577 | (use-package magit |
@@ -800,15 +602,11 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
800 | (forge-owned-accounts '(("duckwork")))) | 602 | (forge-owned-accounts '(("duckwork")))) |
801 | 603 | ||
802 | 604 | ||
803 | <a id="org158c62e"></a> | ||
804 | |||
805 | ## Code display | 605 | ## Code display |
806 | 606 | ||
807 | (add-hook 'prog-mode-hook #'prettify-symbols-mode) | 607 | (add-hook 'prog-mode-hook #'prettify-symbols-mode) |
808 | 608 | ||
809 | 609 | ||
810 | <a id="orga6fefd0"></a> | ||
811 | |||
812 | ### Parentheses | 610 | ### Parentheses |
813 | 611 | ||
814 | (cuss show-paren-style 'mixed) | 612 | (cuss show-paren-style 'mixed) |
@@ -827,8 +625,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
827 | (prog-mode . rainbow-delimiters-mode)) | 625 | (prog-mode . rainbow-delimiters-mode)) |
828 | 626 | ||
829 | 627 | ||
830 | <a id="orge880bac"></a> | ||
831 | |||
832 | ## Line numbers | 628 | ## Line numbers |
833 | 629 | ||
834 | (add-hook 'prog-mode-hook | 630 | (add-hook 'prog-mode-hook |
@@ -838,13 +634,9 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
838 | #'linum-mode)) | 634 | #'linum-mode)) |
839 | 635 | ||
840 | 636 | ||
841 | <a id="orgd13b98f"></a> | ||
842 | |||
843 | ## Languages | 637 | ## Languages |
844 | 638 | ||
845 | 639 | ||
846 | <a id="org7b82a1d"></a> | ||
847 | |||
848 | ### Shell | 640 | ### Shell |
849 | 641 | ||
850 | (use-package shfmt | 642 | (use-package shfmt |
@@ -857,8 +649,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
857 | (use-package fish-mode) | 649 | (use-package fish-mode) |
858 | 650 | ||
859 | 651 | ||
860 | <a id="orgfe2fd7e"></a> | ||
861 | |||
862 | ### Lua | 652 | ### Lua |
863 | 653 | ||
864 | (use-package lua-mode | 654 | (use-package lua-mode |
@@ -866,16 +656,12 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
866 | :interpreter "lua") | 656 | :interpreter "lua") |
867 | 657 | ||
868 | 658 | ||
869 | <a id="org3000823"></a> | ||
870 | |||
871 | ### Fennel | 659 | ### Fennel |
872 | 660 | ||
873 | (use-package fennel-mode | 661 | (use-package fennel-mode |
874 | :mode "\\.fnl\\'") | 662 | :mode "\\.fnl\\'") |
875 | 663 | ||
876 | 664 | ||
877 | <a id="org38d26c9"></a> | ||
878 | |||
879 | ### Web | 665 | ### Web |
880 | 666 | ||
881 | (use-package web-mode | 667 | (use-package web-mode |
@@ -889,20 +675,14 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
889 | ("\\.js\\'" . web-mode))) | 675 | ("\\.js\\'" . web-mode))) |
890 | 676 | ||
891 | 677 | ||
892 | <a id="org9ae6b0f"></a> | ||
893 | |||
894 | ### SSH config | 678 | ### SSH config |
895 | 679 | ||
896 | (use-package ssh-config-mode) | 680 | (use-package ssh-config-mode) |
897 | 681 | ||
898 | 682 | ||
899 | <a id="org100f1c7"></a> | ||
900 | |||
901 | # Writing | 683 | # Writing |
902 | 684 | ||
903 | 685 | ||
904 | <a id="orgfbddaf6"></a> | ||
905 | |||
906 | ## Word count | 686 | ## Word count |
907 | 687 | ||
908 | (use-package wc-mode | 688 | (use-package wc-mode |
@@ -912,8 +692,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
912 | (text-mode . wc-mode)) | 692 | (text-mode . wc-mode)) |
913 | 693 | ||
914 | 694 | ||
915 | <a id="org32c015a"></a> | ||
916 | |||
917 | ## Visual fill column | 695 | ## Visual fill column |
918 | 696 | ||
919 | (use-package visual-fill-column | 697 | (use-package visual-fill-column |
@@ -928,8 +706,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
928 | (org-mode . visual-fill-column-mode)) | 706 | (org-mode . visual-fill-column-mode)) |
929 | 707 | ||
930 | 708 | ||
931 | <a id="orgcb552ec"></a> | ||
932 | |||
933 | ## Mixed-pitch | 709 | ## Mixed-pitch |
934 | 710 | ||
935 | (use-package mixed-pitch | 711 | (use-package mixed-pitch |
@@ -937,8 +713,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
937 | (text-mode . mixed-pitch-mode)) | 713 | (text-mode . mixed-pitch-mode)) |
938 | 714 | ||
939 | 715 | ||
940 | <a id="org3025d5a"></a> | ||
941 | |||
942 | ## Org mode | 716 | ## Org mode |
943 | 717 | ||
944 | (use-package org | 718 | (use-package org |
@@ -956,13 +730,9 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
956 | (org-mode . org-superstar-mode)) | 730 | (org-mode . org-superstar-mode)) |
957 | 731 | ||
958 | 732 | ||
959 | <a id="org7eada39"></a> | ||
960 | |||
961 | # Applications | 733 | # Applications |
962 | 734 | ||
963 | 735 | ||
964 | <a id="orgc966a52"></a> | ||
965 | |||
966 | ## Gemini & Gopher | 736 | ## Gemini & Gopher |
967 | 737 | ||
968 | (use-package elpher | 738 | (use-package elpher |
@@ -990,8 +760,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
990 | :repo "https://git.sr.ht/~acdw/post-to-gemlog-blue.el")) | 760 | :repo "https://git.sr.ht/~acdw/post-to-gemlog-blue.el")) |
991 | 761 | ||
992 | 762 | ||
993 | <a id="orgf849ba8"></a> | ||
994 | |||
995 | ## Pastebin | 763 | ## Pastebin |
996 | 764 | ||
997 | (use-package 0x0 | 765 | (use-package 0x0 |
@@ -999,8 +767,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
999 | (0x0-default-service 'ttm)) | 767 | (0x0-default-service 'ttm)) |
1000 | 768 | ||
1001 | 769 | ||
1002 | <a id="orge75cc1a"></a> | ||
1003 | |||
1004 | ## Gnus | 770 | ## Gnus |
1005 | 771 | ||
1006 | (cuss gnus-select-method | 772 | (cuss gnus-select-method |
@@ -1014,8 +780,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
1014 | '((nntp "news.gwene.org"))) | 780 | '((nntp "news.gwene.org"))) |
1015 | 781 | ||
1016 | 782 | ||
1017 | <a id="org82ec7aa"></a> | ||
1018 | |||
1019 | ## Nov.el: read Ebooks | 783 | ## Nov.el: read Ebooks |
1020 | 784 | ||
1021 | (use-package nov | 785 | (use-package nov |
@@ -1027,8 +791,6 @@ I was using company, but I think it might've been causing issues with `awk-mode` | |||
1027 | (nov-mode . visual-fill-column-mode)) | 791 | (nov-mode . visual-fill-column-mode)) |
1028 | 792 | ||
1029 | 793 | ||
1030 | <a id="orga88ef69"></a> | ||
1031 | |||
1032 | # Machine-specific configurations | 794 | # Machine-specific configurations |
1033 | 795 | ||
1034 | (cond | 796 | (cond |