LINE ENDINGS

This commit is contained in:
Case Duckworth 2021-02-26 11:31:50 -06:00
parent 0ea7241c66
commit d3b6cd94ec
3 changed files with 188 additions and 188 deletions

28
LICENSE
View File

@ -1,14 +1,14 @@
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004 Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
Everyone is permitted to copy and distribute verbatim or modified copies of Everyone is permitted to copy and distribute verbatim or modified copies of
this license document, and changing it is allowed as long as the name is changed. this license document, and changing it is allowed as long as the name is changed.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO. 0. You just DO WHAT THE FUCK YOU WANT TO.

View File

@ -1,123 +1,123 @@
;;; early-init.el -*- no-byte-compile: t; coding: utf-8 -*- ;;; early-init.el -*- no-byte-compile: t; coding: utf-8 -*-
;; Copyright (C) 2020 Case Duckworth ;; Copyright (C) 2020 Case Duckworth
;; Author: Case Duckworth <acdw@acdw.net> ;; Author: Case Duckworth <acdw@acdw.net>
;; Created: Sometime during the Covid-19 lockdown, 2019 ;; Created: Sometime during the Covid-19 lockdown, 2019
;; Keywords: configuration ;; Keywords: configuration
;; URL: https://tildegit.org/acdw/emacs ;; URL: https://tildegit.org/acdw/emacs
;; This file is not part of GNU Emacs. ;; This file is not part of GNU Emacs.
;;; Commentary: ;;; Commentary:
;; This file is automatically tangled from config.org. ;; This file is automatically tangled from config.org.
;; Hand edits will be overwritten! ;; Hand edits will be overwritten!
;;; Code: ;;; Code:
(message "%s..." "Loading early-init.el") (message "%s..." "Loading early-init.el")
;; BOOTSTRAP PACKAGE MANAGEMENT ;; BOOTSTRAP PACKAGE MANAGEMENT
(let ((win-app-dir "~/Applications")) (let ((win-app-dir "~/Applications"))
(dolist (path (list (dolist (path (list
;; Windows ;; Windows
(expand-file-name "exe" win-app-dir) (expand-file-name "exe" win-app-dir)
(expand-file-name "exe/bin" win-app-dir) (expand-file-name "exe/bin" win-app-dir)
(expand-file-name "Git/bin" win-app-dir) (expand-file-name "Git/bin" win-app-dir)
(expand-file-name "Git/usr/bin" win-app-dir) (expand-file-name "Git/usr/bin" win-app-dir)
(expand-file-name "Git/mingw64/bin" win-app-dir) (expand-file-name "Git/mingw64/bin" win-app-dir)
(expand-file-name "Everything" win-app-dir) (expand-file-name "Everything" win-app-dir)
(expand-file-name "Win-builds/bin" win-app-dir) (expand-file-name "Win-builds/bin" win-app-dir)
(expand-file-name "Z/bin" win-app-dir) (expand-file-name "Z/bin" win-app-dir)
;; Linux ;; Linux
(expand-file-name "bin" user-emacs-directory) (expand-file-name "bin" user-emacs-directory)
(expand-file-name "~/bin") (expand-file-name "~/bin")
(expand-file-name "~/.local/bin") (expand-file-name "~/.local/bin")
(expand-file-name "~/Scripts") (expand-file-name "~/Scripts")
)) ))
(when (file-exists-p path) (when (file-exists-p path)
(add-to-list 'exec-path path :append)))) (add-to-list 'exec-path path :append))))
;; Set $PATH ;; Set $PATH
(setenv "PATH" (mapconcat #'identity exec-path path-separator)) (setenv "PATH" (mapconcat #'identity exec-path path-separator))
(setq package-enable-at-startup nil) (setq package-enable-at-startup nil)
(defun acdw/bootstrap-straight () (defun acdw/bootstrap-straight ()
"Bootstrap straight.el." "Bootstrap straight.el."
(defvar bootstrap-version) (defvar bootstrap-version)
(let ((bootstrap-file (let ((bootstrap-file
(expand-file-name (expand-file-name
"straight/repos/straight.el/bootstrap.el" "straight/repos/straight.el/bootstrap.el"
user-emacs-directory)) user-emacs-directory))
(bootstrap-version 5)) (bootstrap-version 5))
(unless (file-exists-p bootstrap-file) (unless (file-exists-p bootstrap-file)
(with-current-buffer (with-current-buffer
(url-retrieve-synchronously (url-retrieve-synchronously
(concat (concat
"https://raw.githubusercontent.com/" "https://raw.githubusercontent.com/"
"raxod502/straight.el/develop/install.el") "raxod502/straight.el/develop/install.el")
'silent 'inhibit-cookies) 'silent 'inhibit-cookies)
(goto-char (point-max)) (goto-char (point-max))
(eval-print-last-sexp))) (eval-print-last-sexp)))
(load bootstrap-file nil 'nomessage))) (load bootstrap-file nil 'nomessage)))
(when (executable-find "git") (when (executable-find "git")
(unless (ignore-errors (acdw/bootstrap-straight)) (unless (ignore-errors (acdw/bootstrap-straight))
(let ((msg "Straight.el didn't bootstrap correctly. Cloning directly")) (let ((msg "Straight.el didn't bootstrap correctly. Cloning directly"))
(message "%s..." msg) (message "%s..." msg)
(call-process "git" nil (call-process "git" nil
(get-buffer-create "*bootstrap-straight-messages*") nil (get-buffer-create "*bootstrap-straight-messages*") nil
"clone" "clone"
"https://github.com/raxod502/straight.el" "https://github.com/raxod502/straight.el"
(expand-file-name "straight/repos/straight.el" (expand-file-name "straight/repos/straight.el"
user-emacs-directory)) user-emacs-directory))
(message "%s...Done." msg) (message "%s...Done." msg)
(acdw/bootstrap-straight)))) (acdw/bootstrap-straight))))
;; SETUP FRAME ;; SETUP FRAME
(add-to-list 'default-frame-alist (add-to-list 'default-frame-alist
'(tool-bar-lines . 0)) '(tool-bar-lines . 0))
(tool-bar-mode -1) (tool-bar-mode -1)
(add-to-list 'default-frame-alist (add-to-list 'default-frame-alist
'(menu-bar-lines . 0)) '(menu-bar-lines . 0))
(menu-bar-mode -1) (menu-bar-mode -1)
(add-to-list 'default-frame-alist (add-to-list 'default-frame-alist
'(vertical-scroll-bars . nil) '(vertical-scroll-bars . nil)
'(horizontal-scroll-bars . nil)) '(horizontal-scroll-bars . nil))
(scroll-bar-mode -1) (scroll-bar-mode -1)
(horizontal-scroll-bar-mode -1) (horizontal-scroll-bar-mode -1)
(setq-default frame-inhibit-implied-resize t (setq-default frame-inhibit-implied-resize t
frame-resize-pixelwise t) frame-resize-pixelwise t)
(setq-default indicate-empty-lines t) (setq-default indicate-empty-lines t)
(setq-default indicate-buffer-boundaries 'right) (setq-default indicate-buffer-boundaries 'right)
(setq-default visual-line-fringe-indicators '(left-curly-arrow nil)) (setq-default visual-line-fringe-indicators '(left-curly-arrow nil))
(defun hook--setup-fringes-curly-arrows () (defun hook--setup-fringes-curly-arrows ()
"Set up curly-arrow fringes." "Set up curly-arrow fringes."
(define-fringe-bitmap 'left-curly-arrow (define-fringe-bitmap 'left-curly-arrow
[#b11000000 [#b11000000
#b01100000 #b01100000
#b00110000 #b00110000
#b00011000]) #b00011000])
(define-fringe-bitmap 'right-curly-arrow (define-fringe-bitmap 'right-curly-arrow
[#b00011000 [#b00011000
#b00110000 #b00110000
#b01100000 #b01100000
#b11000000])) #b11000000]))
(add-hook 'after-init-hook #'hook--setup-fringes-curly-arrows) (add-hook 'after-init-hook #'hook--setup-fringes-curly-arrows)
(defun hook--setup-fringes-arrows () (defun hook--setup-fringes-arrows ()
"Setup arrow fringe bitmaps." "Setup arrow fringe bitmaps."
(define-fringe-bitmap 'left-arrow (define-fringe-bitmap 'left-arrow
[#b00000000 [#b00000000
#b01010100 #b01010100
#b01010100 #b01010100
#b00000000]) #b00000000])
(define-fringe-bitmap 'right-arrow (define-fringe-bitmap 'right-arrow
[#b00000000 [#b00000000
#b00101010 #b00101010
#b00101010 #b00101010
#b00000000])) #b00000000]))
(add-hook 'after-init-hook #'hook--setup-fringes-arrows) (add-hook 'after-init-hook #'hook--setup-fringes-arrows)
(message "%s... Done." "Loading early-init.el") (message "%s... Done." "Loading early-init.el")
;;; early-init.el ends here ;;; early-init.el ends here

102
init.el
View File

@ -1,51 +1,51 @@
;;; init.el -*- lexical-binding: t; coding: utf-8 -*- ;;; init.el -*- lexical-binding: t; coding: utf-8 -*-
;; Copyright (C) 2020 Case Duckworth ;; Copyright (C) 2020 Case Duckworth
;; Author: Case Duckworth <acdw@acdw.net> ;; Author: Case Duckworth <acdw@acdw.net>
;; Created: Sometime during the Covid-19 lockdown, 2019 ;; Created: Sometime during the Covid-19 lockdown, 2019
;; Keywords: configuration ;; Keywords: configuration
;; URL: https://tildegit.org/acdw/emacs ;; URL: https://tildegit.org/acdw/emacs
;; This file is not part of GNU Emacs. ;; This file is not part of GNU Emacs.
;;; Commentary: ;;; Commentary:
;; This file is automatically tangled from config.org. ;; This file is automatically tangled from config.org.
;; Hand edits will be overwritten! ;; Hand edits will be overwritten!
;;; Code: ;;; Code:
(setq-default load-prefer-newer t) (setq-default load-prefer-newer t)
(message "%s..." "Loading init.el") (message "%s..." "Loading init.el")
(let* (;; Speed up init (let* (;; Speed up init
(gc-cons-threshold most-positive-fixnum) (gc-cons-threshold most-positive-fixnum)
;; (gc-cons-percentage 0.6) ;; (gc-cons-percentage 0.6)
(file-name-handler-alist nil) (file-name-handler-alist nil)
;; Config file names ;; Config file names
(config (expand-file-name "config" (config (expand-file-name "config"
user-emacs-directory)) user-emacs-directory))
(config.el (concat config ".el")) (config.el (concat config ".el"))
(config.org (concat config ".org")) (config.org (concat config ".org"))
(straight-org-dir (locate-user-emacs-file "straight/build/org"))) (straight-org-dir (locate-user-emacs-file "straight/build/org")))
;; Okay, let's figure this out. ;; Okay, let's figure this out.
;; `and' evaluates each form, and returns nil on the first that ;; `and' evaluates each form, and returns nil on the first that
;; returns nil. `unless' only executes its body if the test ;; returns nil. `unless' only executes its body if the test
;; returns nil. So. ;; returns nil. So.
;; 1. Test if config.org is newer than config.el. If it is (t), we ;; 1. Test if config.org is newer than config.el. If it is (t), we
;; *want* to evaluate the body, so we need to negate that test. ;; *want* to evaluate the body, so we need to negate that test.
;; 2. Try to load the config. If it errors (nil), it'll bubble that ;; 2. Try to load the config. If it errors (nil), it'll bubble that
;; to the `and' and the body will be evaluated. ;; to the `and' and the body will be evaluated.
(unless (and (not (file-newer-than-file-p config.org config.el)) (unless (and (not (file-newer-than-file-p config.org config.el))
(load config :noerror)) (load config :noerror))
;; A plain require here just loads the older `org' ;; A plain require here just loads the older `org'
;; in Emacs' install dir. We need to add the newer ;; in Emacs' install dir. We need to add the newer
;; one to the `load-path', hopefully that's all. ;; one to the `load-path', hopefully that's all.
(when (file-exists-p straight-org-dir) (when (file-exists-p straight-org-dir)
(add-to-list 'load-path straight-org-dir)) (add-to-list 'load-path straight-org-dir))
;; Load config.org ;; Load config.org
(message "%s..." "Loading config.org") (message "%s..." "Loading config.org")
(require 'org) (require 'org)
(org-babel-load-file config.org) (org-babel-load-file config.org)
(message "%s... Done" "Loading config.org"))) (message "%s... Done" "Loading config.org")))
(message "%s... Done." "Loading init.el") (message "%s... Done." "Loading init.el")
;;; init.el ends here ;;; init.el ends here