From 876215efb8f2d657c19512c0a0d7c61bfb421f8a Mon Sep 17 00:00:00 2001 From: Case Duckworth Date: Wed, 9 Dec 2020 20:28:04 -0600 Subject: Add intro line, remove TOC --- README.md | 259 ++------------------------------------------------------------ 1 file changed, 5 insertions(+), 254 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index 6a727f9..866b4d3 100644 --- a/README.md +++ b/README.md @@ -1,98 +1,9 @@ +Let’s configure Emacs using Org mode, they said. It’ll be fun, they said. -# Table of Contents - -1. [Pave the way](#org8865364) - 1. [Correct `exec-path`](#orga7e2c6f) - 2. [Package management](#org3148c95) - 1. [Straight.el](#orgfaed4fc) - 2. [Use-package](#org41bc53b) - 3. [Extra use-package keywords](#org1849e90) - 3. [Customize variables](#orgc528316) - 1. [Put customizations in a separate file](#orgf585c3e) - 2. [A macro for ease of customization](#orgad4e3a9) - 4. [Keep a tidy `~/.emacs`](#orgf4003c0) -2. [Look and Feel](#org11edc2b) - 1. [Simplify the UI](#orgb076fea) - 1. [Tool bars and menu bars](#org586efe9) - 2. [Scroll bars](#org298e07a) - 3. [Dialog boxen](#org439037b) - 4. [Shorten confirmations](#orgbb289dc) - 5. [Remove the bell](#org2d64864) - 6. [Tell Ediff to setup windows better](#org0b4a638) - 2. [Tweak the remaining UI](#org2ca3449) - 1. [Fringes](#orgae020e2) - 2. [Minibuffer](#orgc8f4148) - 3. [Tabs](#org83e5b37) - 4. [Cursor](#org818f06f) - 5. [Buffer names](#org403cbfb) - 6. [Buffer boundaries](#org86d72cc) - 3. [Startup](#org06a8610) - 4. [Theme](#org3cecd0a) - 1. [Modeline](#org1cecd04) - 2. [Fonts](#org52f810d) -3. [Interactivity](#orgb1b190a) - 1. [Selectrum](#orge91bc0a) - 2. [Prescient](#org2dec02d) - 3. [Consult](#org793390e) - 4. [Ignore case](#orgf0e1425) - 5. [Search](#orgcb1ee5e) - 6. [Mouse](#orgf588a26) -4. [Persistence](#orgb6ade5d) - 1. [Save history](#org9a6f451) - 2. [Save places in files](#org3041895) - 3. [Recent files](#orgfddf139) - 1. [Easily navigate recent files](#org5211a84) - 4. [Undo](#org203b48b) -5. [Editing](#org697ec47) - 1. [Operate visually on lines](#org958bd79) - 2. [Require a final newline](#orgc5ef3b6) - 3. [Killing & Yanking](#orgba62063) - 1. [Replace selection when typing](#orgcb04f02) - 2. [Save existing clipboard text into kill ring before replacing it](#orgdf80771) - 4. [So long mode](#org2252a8b) - 5. [Multiple cursors](#org6fe3b6b) - 6. [Expand region](#orgfe5b963) -6. [Files](#org0b92a32) - 1. [Encoding](#orgf1babbf) - 1. [UTF-8](#org8dd350d) - 2. [Convert all files to UNIX-style line endings](#org34854a5) - 2. [Backups](#org184d029) - 3. [Auto-saves](#org72595b4) - 4. [Revert files](#orgd374486) - 5. [Add a timestamp to files](#org8ac0e64) -7. [Programming](#org97bb90c) - 1. [Which function are we in?](#orgbcce753) - 2. [Parentheses](#org7d7c4d6) - 1. [Show parentheses](#orgbe3915d) - 2. [Smart parentheses](#org9415ceb) - 3. [Line numbers](#org2ebc45e) -8. [Writing](#orge8c66c9) - 1. [Visual Fill Column](#org5278827) - 2. [Type nice-looking quote-type marks](#org63bd7b9) -9. [Applications](#org50abb5d) - 1. [Magit](#orgf68bfba) - 2. [Org mode](#org66c3b6b) - 1. [Export to markdown](#org34de14b) - 2. [Make bullets look like bullets](#orge32cf6b) - 3. [A better return in Org mode](#org5d13ece) -10. [Appendices](#org1c0423c) - 1. [Emacs' files](#orgea74573) - 1. [init.el](#org1ed6b18) - 2. [early-init.el](#org1e22a5e) - 2. [Ease tangling and loading of Emacs' init](#org50bd83d) - 3. [License](#org551e420) - 1. [Note on the license](#org15f94a8) - 4. [Keymaps for *this* file](#org3bda9ee) - - - - # Pave the way - - ## Correct `exec-path` (let ((win-downloads "c:/Users/aduckworth/Downloads")) @@ -113,13 +24,9 @@ (add-to-list 'exec-path path)))) - - ## Package management - - ### Straight.el (defvar bootstrap-version) @@ -136,8 +43,6 @@ (load bootstrap-file nil 'nomessage)) - - ### Use-package (setq straight-use-package-by-default t) @@ -145,8 +50,6 @@ (straight-use-package 'use-package) - - ### Extra use-package keywords 1. :custom-update @@ -159,21 +62,15 @@ (require 'use-package-custom-update) - - ## Customize variables - - ### Put customizations in a separate file (setq custom-file (expand-file-name "custom.el" user-emacs-directory)) - - ### A macro for ease of customization (defmacro cuss (var val &optional docstring) @@ -182,8 +79,6 @@ ',var ,val)) - - ## Keep a tidy `~/.emacs` (use-package no-littering @@ -208,18 +103,12 @@ (make-directory (no-littering-expand-var-file-name dir) t)) - - # Look and Feel - - ## Simplify the UI - - ### Tool bars and menu bars (cuss default-frame-alist @@ -230,8 +119,6 @@ (tool-bar-mode -1) - - ### Scroll bars (add-to-list 'default-frame-alist '(vertical-scroll-bars . nil)) @@ -241,50 +128,36 @@ (horizontal-scroll-bar-mode -1) - - ### Dialog boxen (cuss use-dialog-box nil) - - ### Shorten confirmations (fset 'yes-or-no-p #'y-or-n-p) - - ### Remove the bell (cuss visible-bell (not (string= (system-name) "larry"))) - - ### Tell Ediff to setup windows better (declare-function ediff-setup-windows-plain "ediff-wind.el") (cuss ediff-window-setup-function #'ediff-setup-windows-plain) - - ## Tweak the remaining UI - - ### Fringes (add-to-list 'default-frame-alist '(left-fringe-width . 2)) (add-to-list 'default-frame-alist '(right-fringe-width . 2)) - - ### Minibuffer 1. Setup the minibuffer frame @@ -302,8 +175,6 @@ '(read-only t cursor-intangible t face minibuffer-prompt)) - - ### Tabs 1. Show the tabs as current buffer, plus window count @@ -316,8 +187,6 @@ "Show the tab bar only when there's more than 1 tab.") - - ### Cursor (cuss cursor-type 'bar @@ -327,16 +196,12 @@ (blink-cursor-mode 0) - - ### Buffer names (require 'uniquify) (cuss uniquify-buffer-name-style 'forward) - - ### Buffer boundaries (cuss indicate-buffer-boundaries @@ -347,8 +212,6 @@ (cuss indicate-empty-lines t) - - ## Startup (cuss inhibit-startup-screen t "Don't show Emacs' startup buffer.") @@ -356,8 +219,6 @@ (cuss initial-scratch-message "" "Empty *scratch*.") - - ## Theme (use-package modus-themes @@ -395,27 +256,21 @@ (load-theme 'modus-operandi t)) - - ### Modeline (custom-set-faces - '(mode-line ((t (:family "fixed" - :height 100 + '(mode-line ((t (:height 0.8 :overline t :box nil :foreground "black" :background "white")))) - '(mode-line-inactive ((t (:family "fixed" - :height 80 + '(mode-line-inactive ((t (:height 0.8 :overline t :box nil :foreground "#808080" :background "white"))))) - - ### Fonts 1. Define fonts @@ -474,13 +329,9 @@ (unicode-fonts-setup)) - - # Interactivity - - ## Selectrum (use-package selectrum @@ -488,8 +339,6 @@ (selectrum-mode +1)) - - ## Prescient (use-package prescient @@ -502,8 +351,6 @@ (selectrum-prescient-mode +1)) - - ## Consult (use-package consult @@ -523,8 +370,6 @@ (fset 'multi-occur #'consult-multi-occur)) - - ## Ignore case (cuss completion-ignore-case t) @@ -532,8 +377,6 @@ (cuss read-file-name-completion-ignore-case t) - - ## Search (use-package ctrlf @@ -548,8 +391,6 @@ (ctrlf-mode +1)) - - ## Mouse (dolist (vec '([left-margin wheel-down] @@ -559,13 +400,9 @@ (bind-key vec #'mwheel-scroll)) - - # Persistence - - ## Save history (require 'savehist) @@ -584,8 +421,6 @@ (savehist-mode +1) - - ## Save places in files (require 'saveplace) @@ -596,8 +431,6 @@ (save-place-mode 1) - - ## Recent files (require 'recentf) @@ -612,8 +445,6 @@ (recentf-mode 1) - - ### Easily navigate recent files (defun recentf-find-file () @@ -626,8 +457,6 @@ (global-set-key (kbd "C-x C-r") #'recentf-find-file) - - ## Undo (use-package undohist @@ -635,54 +464,38 @@ (undohist-initialize)) - - # Editing - - ## Operate visually on lines (global-visual-line-mode +1) - - ## Require a final newline (cuss require-final-newline t) - - ## Killing & Yanking - - ### Replace selection when typing (delete-selection-mode +1) - - ### Save existing clipboard text into kill ring before replacing it (cuss save-interprogram-paste-before-kill t) - - ## So long mode (when (fboundp 'global-so-long-mode) (global-so-long-mode)) - - ## Multiple cursors (use-package multiple-cursors @@ -692,8 +505,6 @@ ("C-c C-<" . mc/mark-all-like-this)) - - ## Expand region (use-package expand-region @@ -702,18 +513,12 @@ ("C-+" . er/contract-region))) - - # Files - - ## Encoding - - ### UTF-8 (set-language-environment 'utf-8) @@ -724,8 +529,6 @@ (prefer-coding-system 'utf-8) - - ### Convert all files to UNIX-style line endings from [Emacs Wiki](https://www.emacswiki.org/emacs/EndOfLineTips). @@ -742,8 +545,6 @@ I add it to the `find-file-hook` *and* `before-save-hook` because I don't want t (add-hook 'before-save-hook #'ewiki/no-junk-please-were-unixish) - - ## Backups (cuss backup-by-copying 1) @@ -752,47 +553,33 @@ I add it to the `find-file-hook` *and* `before-save-hook` because I don't want t (cuss vc-make-backup-files t) - - ## Auto-saves (auto-save-visited-mode 1) - - ## Revert files (cuss auto-revert-verbose nil) (global-auto-revert-mode +1) - - ## Add a timestamp to files (add-hook 'before-save-hook #'time-stamp) - - # Programming - - ## Which function are we in? (which-function-mode +1) - - ## Parentheses - - ### Show parentheses (cuss show-paren-delay 0 "Show matching parens immediately.") @@ -806,8 +593,6 @@ I add it to the `find-file-hook` *and* `before-save-hook` because I don't want t (add-hook 'prog-mode-hook #'show-paren-mode) - - ### Smart parentheses (use-package smartparens @@ -819,8 +604,6 @@ I add it to the `find-file-hook` *and* `before-save-hook` because I don't want t (prog-mode-hook . smart-parens-strict-mode)) - - ## Line numbers (defun acdw/enable-line-numbers () @@ -837,13 +620,11 @@ I add it to the `find-file-hook` *and* `before-save-hook` because I don't want t (add-hook 'prog-mode-hook #'acdw/enable-line-numbers) - + # Writing - - ## Visual Fill Column (use-package visual-fill-column @@ -859,8 +640,6 @@ I add it to the `find-file-hook` *and* `before-save-hook` because I don't want t (text-mode-hook . visual-fill-column-mode)) - - ## Type nice-looking quote-type marks (use-package typo @@ -868,13 +647,9 @@ I add it to the `find-file-hook` *and* `before-save-hook` because I don't want t (text-mode-hook . typo-mode)) - - # Applications - - ## Magit (use-package magit @@ -882,11 +657,9 @@ I add it to the `find-file-hook` *and* `before-save-hook` because I don't want t ("C-x g" . magit-status)) - - ## Org mode -I’ve put org mode under Applications, as opposed to [8](#orge8c66c9), because it’s more generally-applicable than that. +I’ve put org mode under Applications, as opposed to [8](#org92fae61), because it’s more generally-applicable than that. (use-package org :custom @@ -902,15 +675,11 @@ I’ve put org mode under Applications, as opposed to [8](#orge8c66c9), because (org-confirm-babel-evaluate nil)) - - ### Export to markdown (require 'ox-md) - - ### Make bullets look like bullets (font-lock-add-keywords @@ -922,8 +691,6 @@ I’ve put org mode under Applications, as opposed to [8](#orge8c66c9), because "•")))))) - - ### [A better return in Org mode](http://kitchingroup.cheme.cmu.edu/blog/2017/04/09/A-better-return-in-org-mode/) (require 'org-inlinetask) @@ -998,18 +765,12 @@ I’ve put org mode under Applications, as opposed to [8](#orge8c66c9), because 'scimax/org-return) - - # Appendices - - ## Emacs' files - - ### init.el ;; init.el -*- lexical-binding: t -*- @@ -1029,8 +790,6 @@ I’ve put org mode under Applications, as opposed to [8](#orge8c66c9), because (org-babel-load-file org)))) - - ### early-init.el ;; early-init.el -*- lexical-binding: t; no-byte-compile: t; -*- @@ -1039,8 +798,6 @@ I’ve put org mode under Applications, as opposed to [8](#orge8c66c9), because (setq frame-inhibit-implied-resize t) - - ## Ease tangling and loading of Emacs' init (defun refresh-emacs (&optional disable-load) @@ -1063,8 +820,6 @@ I’ve put org mode under Applications, as opposed to [8](#orge8c66c9), because (byte-compile-file f (not disable-load)))))))))) - - ## License Copyright © 2020 Case Duckworth @@ -1090,8 +845,6 @@ following source block, for details. 0. You just DO WHAT THE FUCK YOU WANT TO. - - ### Note on the license It's highly likely that the WTFPL is completely incompatible with the @@ -1100,8 +853,6 @@ GPL, for what should be fairly obvious reasons. To that, I say: **SUE ME, RMS!** - - ## Keymaps for *this* file This isn’t working … yet. -- cgit 1.4.1-21-gabe81