~hristoast/dot-emacs

4e208a0a869b7bd7c5e23ce792e29c8116d79419 — Hristos N. Triantafillou 1 year, 5 months ago 6ec7815
Use straight.el

Also disable the build since it doesn't work and I am not going to fix
it right now.
M .build.yml => .build.yml +13 -13
@@ 1,13 1,13 @@
image: archlinux
environment:
  EMACS_TRUST_SML_THEMES: t
  EMACS_TRUST_THEMES: t
packages:
  - emacs
  - python3
sources:
  - https://git.sr.ht/~hristoast/dot-emacs
tasks:
  - test-startup: |
      cd ./dot-emacs
      ./test-startup.py || exit 1
# image: archlinux
# environment:
#   EMACS_TRUST_SML_THEMES: t
#   EMACS_TRUST_THEMES: t
# packages:
#   - emacs
#   - python3
# sources:
#   - https://git.sr.ht/~hristoast/dot-emacs
# tasks:
#   - test-startup: |
#       cd ./dot-emacs
#       ./test-startup.py || exit 1

M .gitignore => .gitignore +1 -0
@@ 9,3 9,4 @@ tramp
elpa/
snippets/
my-custom.el
straight/

M init.el => init.el +21 -29
@@ 1,7 1,7 @@
;;; init.el --- Self-installing, for Emacs 25 and up.
;;; init.el --- Self-installing.
;;; Commentary:
;;
;; My Emacs configuration for writing code and things.  Might work on Emacs 24.
;; My Emacs configuration for writing code and things.
;;
;; A breakdown of keybindings can be found in this repository at lib/bindings.el, or at:
;; https://git.sr.ht/~hristoast/dot-emacs/tree/master/lib/bindings.el


@@ 12,42 12,35 @@
(defconst emacs-start-time (current-time))

(setq
 ;; use-package handles enabling things.
 package-enable-at-startup nil
 ;; Keep custom stuff out of here!
 custom-file (or (getenv "EMACS_CUSTOM_FILE")
                 (concat user-emacs-directory "/my-custom.el"))
 package-archives
 ;; GNU over SSL
 '(("gnu" . "https://elpa.gnu.org/packages/")
   ;; MELPA (Milkypostman’s Emacs Lisp Package Archive)
   ("melpa" . "https://melpa.org/packages/")
   ;; MELPA Stable
   ("melpa-stable" . "https://stable.melpa.org/packages/")
   ;; Org mode ELPA archive
   ("org" . "https://orgmode.org/elpa/")))
                 (concat user-emacs-directory "/my-custom.el")))

;; Init package.el
(require 'package)
(package-initialize)
;; https://github.com/raxod502/straight.el/blob/a7f94876b2bf96d2595706270be6630ecc94f0d3/README.md#getting-started
(defvar bootstrap-version)
(let ((bootstrap-file
       (expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
      (bootstrap-version 5))
  (unless (file-exists-p bootstrap-file)
    (with-current-buffer
        (url-retrieve-synchronously
         "https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
         'silent 'inhibit-cookies)
      (goto-char (point-max))
      (eval-print-last-sexp)))
  (load bootstrap-file nil 'nomessage))

;; Ensure that use-package is installed
(unless (package-installed-p 'use-package)
  (package-refresh-contents)
  (package-install 'use-package))

;; https://github.com/jwiegley/use-package/blob/4b58ab78177f636f862a66c7a8fdcf9b070e0925/README.md#use-packageel-is-no-longer-needed-at-runtime
(eval-when-compile (require 'use-package))
(require 'bind-key)
;; https://github.com/raxod502/straight.el/blob/a7f94876b2bf96d2595706270be6630ecc94f0d3/README.md#integration-with-use-package
(straight-use-package 'use-package)

;; Diminished modes are minor modes with no modeline display
;; http://www.eskimo.com/~seldon/diminish.el
(use-package diminish :ensure t)
(use-package diminish :straight t)

;; Module definitions
(defvar h/modules
  #s(hash-table
     size 36
     size 35
     data
     ;; "Env var that disables loading if present" "file name in lib/ minus the extension"
     ("EMACS_NO_EDITING_TWEAKS" "editing"


@@ 61,7 54,6 @@
      "EMACS_NO_CLOJURE" "clojure"
      "EMACS_NO_CSS" "css"
      "EMACS_NO_DOCKER" "docker"
      "EMACS_NO_EPL" "emacs-package-library"
      "EMACS_NO_FISH" "fish"
      "EMACS_NO_GIT" "git"
      "EMACS_NO_GODOT" "godot"


@@ 85,7 77,7 @@
      "EMACS_NO_SYSTEMD" "systemd"
      "EMACS_NO_TERRAFORM" "terraform"
      "EMACS_NO_TOML" "toml"
      "EMACS_NO_VISUAL_BASIC" "visual-basic-mode"
      ;; "EMACS_NO_VISUAL_BASIC" "visual-basic-mode"
      "EMACS_NO_YAML" "yaml")))

;; Load everything

M lib/ansible.el => lib/ansible.el +1 -1
@@ 5,6 5,6 @@

;; Ansible keywords completion for Emacs
;; https://github.com/krzysztof-magosa/company-ansible
(use-package company-ansible :defer t :ensure t)
(use-package company-ansible :defer t :straight t)

;;; ansible.el ends here

M lib/c-cpp.el => lib/c-cpp.el +11 -11
@@ 7,7 7,7 @@
;; Java, CORBA IDL (and the variants PSDL and CIDL), Pike and AWK code
;; https://www.gnu.org/software/emacs/manual/html_mono/ccmode.html
(use-package cc-mode
  :ensure t
  :straight t
  :defer t
  :config
  (defun clang-format-save-hook ()


@@ 35,17 35,17 @@
;; Clang format
;; http://clang.llvm.org/docs/ClangFormat.html
;; http://clang.llvm.org/docs/ClangFormatStyleOptions.html
(use-package clang-format :ensure t :defer t)
(use-package clang-format :straight t :defer t)

;; major-mode for editing CMake sources
;; https://github.com/Kitware/CMake/blob/master/Auxiliary/cmake-mode.el
(use-package cmake-mode :defer t :ensure t)
(use-package cmake-mode :defer t :straight t)


;; Auto-completion for C/C++ headers using Company
;; https://github.com/randomphrase/company-c-headers
(use-package company-c-headers
  :ensure t
  :straight t
  :defer t
  :init
  (add-hook 'c-mode-common-hook


@@ 56,7 56,7 @@
;; company-mode completion back-end for irony-mode
;; https://github.com/Sarcasm/company-irony
(use-package company-irony
  :ensure t
  :straight t
  :defer t
  :init
  (add-hook 'c-mode-common-hook


@@ 70,7 70,7 @@
;; A c/c++ client/server indexer for c/c++/objc[++] with integration for Emacs based on clang.
;; http://www.rtags.net / https://github.com/Andersbakken/rtags
(use-package company-rtags
  :ensure t
  :straight t
  :defer t
  :config
  (progn


@@ 83,7 83,7 @@
;; C, C++ and Objective-C support for Flycheck, using Irony Mode
;; https://github.com/Sarcasm/flycheck-irony
(use-package flycheck-irony
  :ensure t
  :straight t
  :config
  (eval-after-load 'flycheck
    '(add-hook 'flycheck-mode-hook #'flycheck-irony-setup)))


@@ 91,7 91,7 @@
;; A c/c++ client/server indexer for c/c++/objc[++] with integration for Emacs based on clang.
;; http://www.rtags.net / https://github.com/Andersbakken/rtags
(use-package flycheck-rtags
  :ensure t
  :straight t
  :defer t
  :config
  (progn


@@ 108,7 108,7 @@
;; Shows an inline arguments hint for the C/C++ function at point
;; https://github.com/abo-abo/function-args
(use-package function-args
  :ensure t
  :straight t
  :config
  (fa-config-default)
  :bind


@@ 120,7 120,7 @@
;; A C/C++ minor mode for Emacs powered by libclang
;; https://github.com/Sarcasm/irony-mode
(use-package irony
  :ensure t
  :straight t
  :defer t
  :diminish abbrev-mode irony-mode
  :config


@@ 132,6 132,6 @@

;; irony-mode support for eldoc-mode
;; https://github.com/ikirill/irony-eldoc
(use-package irony-eldoc :defer t :ensure t)
(use-package irony-eldoc :defer t :straight t)

;;; c-cpp.el ends here

M lib/clojure.el => lib/clojure.el +2 -2
@@ 9,7 9,7 @@
;; Depends on clojure-mode:
;; https://github.com/clojure-emacs/clojure-mode
(use-package cider
  :ensure t
  :straight t
  :bind
  ("C-c n c" . delete-nrepl)
  :config


@@ 21,7 21,7 @@

;; yasnippet 0.7.0+ snippets for clojure
;; https://github.com/mpenet/clojure-snippets
(use-package clojure-snippets :defer t :ensure t)
(use-package clojure-snippets :defer t :straight t)

(provide 'clojure)
;;; clojure.el ends here

M lib/css.el => lib/css.el +1 -1
@@ 5,7 5,7 @@

;; Built into Emacs
(use-package css-mode
  :ensure t
  :straight t
  :init (add-hook 'css-mode-hook 'skewer-css-mode))

;;; css.el ends here

M lib/docker.el => lib/docker.el +1 -1
@@ 5,6 5,6 @@

;; An emacs mode for handling Dockerfiles
;; https://github.com/spotify/dockerfile-mode
(use-package dockerfile-mode :defer t :ensure t)
(use-package dockerfile-mode :defer t :straight t)

;;; docker.el ends here

M lib/editing.el => lib/editing.el +17 -17
@@ 4,12 4,12 @@
;;; Code:

;; https://www.gnu.org/software/emacs/manual/html_node/emacs/Autorevert.html
(use-package autorevert :diminish auto-revert-mode :ensure t)
(use-package autorevert :diminish auto-revert-mode :straight t)

;; Clean auto-indent and backspace unindent
;; https://github.com/pmarinov/clean-aindent-mode
(use-package clean-aindent-mode
  :ensure t
  :straight t
  :config
  (electric-indent-mode -1)
  (setq clean-aindent-is-simple-indent t))


@@ 17,7 17,7 @@
;; Modular in-buffer completion framework for Emacs
;; http://company-mode.github.io/
(use-package company
  :ensure t
  :straight t
  :diminish company-mode
  :config
  (add-hook 'after-init-hook 'global-company-mode)


@@ 44,7 44,7 @@

;; Various completion functions using Ivy
;; https://github.com/abo-abo/swiper / https://melpa.org/#/counsel
(use-package counsel :defer t :ensure t)
(use-package counsel :defer t :straight t)

;; A minor mode that guesses the indentation offset originally used for
;; creating source code files and transparently adjusts the corresponding


@@ 52,14 52,14 @@
;; https://github.com/jscheid/dtrt-indent
;; TODO: remove this, perhaps?
(use-package dtrt-indent
  :ensure t
  :straight t
  :config
  (setq global-mode-string (remove 'dtrt-indent-mode-line-info global-mode-string))
  (dtrt-indent-mode 1))

;; Syntax checking for GNU Emacs - http://www.flycheck.org/
(use-package flycheck
  :ensure t
  :straight t
  :bind
  (("C-c e n" . flycheck-next-error)
   ("C-c e p" . flycheck-previous-error))


@@ 68,18 68,18 @@

;; Interactively Do Things
;; http://emacswiki.org/emacs/InteractivelyDoThings
(use-package ido :config (ido-mode t) :ensure t)
(use-package ido :config (ido-mode t) :straight t)

;; Emacs rainbow delimiters mode
;; https://github.com/Fanael/rainbow-delimiters
(use-package rainbow-delimiters
  :ensure t
  :straight t
  :init (add-hook 'prog-mode-hook #'rainbow-delimiters-mode))

;; Rainbow mode - #000 #fff #f00 #ff0 #00f #0f0 #800080 #00ffff #ff00ff
;; https://julien.danjou.info/projects/emacs-packages
(use-package rainbow-mode
  :ensure t
  :straight t
  :diminish rainbow-mode
  :config
  (add-hook 'css-mode-hook 'rainbow-mode)


@@ 90,7 90,7 @@
;; http://www.gnu.org/software/emacs/manual/html_node/emacs/Semantic.html
;; (require 'semantic)
(use-package semantic
  :ensure t
  :straight t
  :commands semantic-mode
  :config
  (global-semanticdb-minor-mode 1)


@@ 101,7 101,7 @@
;; pairs and tries to be smart about it
;; https://github.com/Fuco1/smartparens
(use-package smartparens
  :ensure t
  :straight t
  :diminish smartparens-mode
  :config
  (setq


@@ 133,13 133,13 @@

;;  Emacs isearch with an overview. Oh, man!
;; https://github.com/abo-abo/swiper
(use-package swiper :ensure t)
(use-package swiper :straight t)

;; undo-tree.el --- Treat undo history as a tree
;; http://www.dr-qubit.org/undo-tree/undo-tree.el
;; https://www.emacswiki.org/emacs/UndoTree
(use-package undo-tree
  :ensure t
  :straight t
  :diminish undo-tree-mode
  :config
  (setq


@@ 151,7 151,7 @@

;; windmove, built into Emacs: http://is.gd/63r6U0
(use-package windmove
  :ensure t
  :straight t
  :bind
  ("M-e" . windmove-left)
  ("M-u" . windmove-right)


@@ 161,7 161,7 @@
;; Unobtrusively trim extraneous whitespace *ONLY* in lines edited
;; https://github.com/lewang/ws-butler
(use-package ws-butler
  :ensure t
  :straight t
  :diminish ws-butler-mode
  :config
  (add-hook 'prog-mode-hook 'ws-butler-mode))


@@ 169,7 169,7 @@
;; Yet another snippet extension
;; http://capitaomorte.github.io/yasnippet/
(use-package yasnippet
  :ensure t
  :straight t
  :diminish yas-minor-mode
  :init
  ;; Shut yas up! Disables startup noise


@@ 180,7 180,7 @@
;; zygospore: Reversible C-x 1
;; https://github.com/LouisKottmann/zygospore.el
(use-package zygospore
  :ensure t
  :straight t
  :bind ("C-x 1" . zygospore-toggle-delete-other-windows))

;;; editing.el ends here

D lib/emacs-package-library.el => lib/emacs-package-library.el +0 -10
@@ 1,10 0,0 @@
;;; emacs-package-library.el --- Load EPL packages
;;; Commentary:
;; Packages related to EPL.
;;; Code:

;; Emacs Package Library
;; https://github.com/cask/epl
(use-package epl :ensure t)

;;; emacs-package-library.el ends here

M lib/fish.el => lib/fish.el +1 -1
@@ 5,6 5,6 @@

;; fish-mode for emacs
;; https://github.com/wwwjfy/emacs-fish
(use-package fish-mode :ensure t)
(use-package fish-mode :straight t)

;;; fish.el ends here

M lib/git.el => lib/git.el +2 -2
@@ 5,12 5,12 @@

;; Emacs mode for .gitignore files
;; https://github.com/magit/git-modes/blob/master/gitignore-mode.el
(use-package gitignore-mode :defer t :ensure t)
(use-package gitignore-mode :defer t :straight t)

;; A Git Porcelain inside Emacs
;; https://magit.vc/
(use-package magit
  :ensure t
  :straight t
  :bind
  ("C-c g d" . magit-diff-range)
  ("C-x g" . magit-status)

M lib/godot.el => lib/godot.el +1 -1
@@ 6,7 6,7 @@
;; Major mode for editing Godot GDScript files
(use-package gdscript-mode
  :defer t
  :ensure t
  :straight t
  ;; Use toml-mode for .godot and .tscn source files
  :init (setq auto-mode-alist (append '(("\\.godot$" . toml-mode))
                                      '(("\\.tscn$" . toml-mode))

M lib/golang.el => lib/golang.el +3 -3
@@ 14,10 14,10 @@
(unless (getenv "EMACS_NO_GOCODE") ;; Don't try to set up `gocode'
  ;; company-mode autocompletion for golang
  ;; https://github.com/nsf/gocode/tree/master/emacs-company
  (use-package company-go :defer t :ensure t))
  (use-package company-go :defer t :straight t))

(use-package go-mode
  :ensure t
  :straight t
  :init
  (unless (getenv "EMACS_NO_GOCODE") ;; Don't try to set up `gocode'
    (add-hook 'go-mode-hook (lambda () (add-to-list 'company-backends 'company-go))))


@@ 25,6 25,6 @@
  (add-hook 'before-save-hook #'gofmt-before-save)
  (add-hook 'go-mode-hook 'go-eldoc-setup))

(use-package go-eldoc :defer t :ensure t)
(use-package go-eldoc :defer t :straight t)

;;; golang.el ends here

M lib/groovy.el => lib/groovy.el +1 -1
@@ 5,6 5,6 @@

;; A groovy major mode, grails minor mode, and a groovy inferior mode.
;; https://github.com/Groovy-Emacs-Modes/groovy-emacs-modes
(use-package groovy-mode :defer t :ensure t)
(use-package groovy-mode :defer t :straight t)

;;; groovy.el ends here

M lib/html.el => lib/html.el +2 -2
@@ 12,7 12,7 @@
;; Live web development in Emacs
;; https://github.com/skeeto/skewer-mode
(use-package skewer-mode
  :ensure t
  :straight t
  :defer t
  :init
  (setq-default httpd-root (concat user-emacs-directory "/httpd"))


@@ 23,7 23,7 @@
;; web-mode: An autonomous emacs major-mode for editing web templates.
;; http://web-mode.org/
(use-package web-mode
  :ensure t
  :straight t
  :defer t
  :init
  (setq-default

M lib/java.el => lib/java.el +1 -1
@@ 6,7 6,7 @@
;; A Better Java Development Environment for Emacs
;; https://github.com/mopemope/meghanada-emacs
(use-package meghanada
  :ensure t
  :straight t
  :init
  (add-hook 'java-mode-hook
            (lambda ()

M lib/javascript.el => lib/javascript.el +2 -2
@@ 5,13 5,13 @@

;; Tern backend for company-mode.
;; https://github.com/proofit404/company-tern
(use-package company-tern :defer t :ensure t)
(use-package company-tern :defer t :straight t)

;; Tern: Intelligent JavaScript tooling
;; http://ternjs.net/doc/manual.html#emacs
;; TODO: require `tern' installation.
(use-package tern
  :ensure t
  :straight t
  :commands tern-mode
  :init
  (add-hook 'js-mode-hook

M lib/jinja2.el => lib/jinja2.el +1 -1
@@ 5,6 5,6 @@

;; Jinja2 mode for emacs
;; https://github.com/paradoxxxzero/jinja2-mode
(use-package jinja2-mode :defer t :ensure t)
(use-package jinja2-mode :defer t :straight t)

;;; jinja2.el ends here

M lib/json.el => lib/json.el +1 -1
@@ 5,6 5,6 @@

;; Major mode for editing JSON files with emacs
;; https://github.com/joshwnj/json-mode
(use-package json-mode :defer t :ensure t)
(use-package json-mode :defer t :straight t)

;;; json.el ends here

M lib/lua.el => lib/lua.el +2 -2
@@ 5,12 5,12 @@

;; company-mode completion backend for Lua
;; https://github.com/ptrv/company-lua
(use-package company-lua :defer t :ensure t)
(use-package company-lua :defer t :straight t)

;; Emacs major mode for editing Lua
;; http://immerrr.github.io/lua-mode/
;; TODO: require a `luacheck' install
(use-package lua-mode :defer t :ensure t)
(use-package lua-mode :defer t :straight t)

;; Use lua-mode for PICO-8 source files
;; TODO: document that this is here, or make a separate pico8.el file.

M lib/markdown.el => lib/markdown.el +2 -2
@@ 6,7 6,7 @@
;; Emacs Markdown Mode
;; https://github.com/jrblevin/markdown-mode
(use-package markdown-mode
  :ensure t
  :straight t
  :config
  ;; Special indent for markdown-mode
  ;; TODO: set this the right way


@@ 21,6 21,6 @@

;; Additional functions for Emacs [markdown-mode].
;; https://github.com/milkypostman/markdown-mode-plus
(use-package markdown-mode+ :ensure t :defer t)
(use-package markdown-mode+ :straight t :defer t)

;;; markdown.el ends here

M lib/nginx.el => lib/nginx.el +1 -1
@@ 5,6 5,6 @@

;; Emacs editing mode for Nginx config files
;; https://github.com/ajc/nginx-mode
(use-package nginx-mode :defer t :ensure t)
(use-package nginx-mode :defer t :straight t)

;;; nginx.el ends here

M lib/orgmode.el => lib/orgmode.el +1 -1
@@ 5,7 5,7 @@

;; https://orgmode.org/elpa.html
(use-package org-plus-contrib
  :ensure t
  :straight t
  :bind
  ("C-c l" . org-store-link)
  ("C-c a" . org-agenda)

M lib/python.el => lib/python.el +3 -3
@@ 5,7 5,7 @@

;; Python Black for Emacs
;; https://github.com/proofit404/blacken
(use-package blacken :defer t :ensure t)
(use-package blacken :defer t :straight t)

;; Python auto-completion for Emacs
;; http://tkf.github.io/emacs-jedi/latest/


@@ 13,7 13,7 @@
;; Company backend for Python jedi
;; https://github.com/syohex/emacs-company-jedi
(use-package company-jedi
  :ensure t
  :straight t
  :defer t
  :init
  (setq-default


@@ 22,7 22,7 @@

;; Navigate Python documentation
;; https://github.com/statmobile/pydoc
(use-package pydoc :defer t :ensure t)
(use-package pydoc :defer t :straight t)

;; Built into Emacs
;; https://www.emacswiki.org/emacs/PythonProgrammingInEmacs

M lib/racket.el => lib/racket.el +2 -2
@@ 7,11 7,11 @@
;; https://github.com/greghendershott/racket-mode
;; See the below link for why the REPL doesn't load some functions.
;; http://stackoverflow.com/a/31523545
(use-package racket-mode :defer t :ensure t)
(use-package racket-mode :defer t :straight t)

;; Start racket-mode via a hook so we get rainbow delimiters
(use-package racket-repl-mode
  :ensure nil
  :straight nil
  :defer t
  :init
  ;; TODO: Currently lacking a good way to start racket-mode when we launch

M lib/ruby.el => lib/ruby.el +2 -2
@@ 7,14 7,14 @@
;; https://github.com/dgutov/robe
;; Requires: `gem install pry` and a Gemfile listing your gems
(use-package robe
  :ensure t
  :straight t
  :diminish robe-mode
  :config
  (add-hook 'ruby-mode-hook 'robe-mode))

;; Activate Robe and company-robe when we start ruby-mode
(use-package ruby-mode
  :ensure t
  :straight t
  :config
  (add-hook 'ruby-mode-hook
            (lambda ()

M lib/rust.el => lib/rust.el +3 -3
@@ 6,15 6,15 @@
;;; Code:
;;  Company integration for racer
;; https://github.com/emacs-pe/company-racer
(use-package company-racer :ensure t :ensure t)
(use-package company-racer :straight t)

;; https://github.com/flycheck/flycheck-rust
(use-package flycheck-rust :ensure t :ensure t)
(use-package flycheck-rust :straight t)

;; rust-mode: https://github.com/rust-lang/rust-mode
;; and emacs-racer: https://github.com/racer-rust/emacs-racer
(use-package racer
  :ensure t
  :straight t
  :init
  (defvar racer-cmd (concat (getenv "HOME") "/racer/target/release/racer"))
  (defvar racer-rust-src-path (concat (getenv "HOME") "/rust/src"))

M lib/shaders.el => lib/shaders.el +1 -1
@@ 5,6 5,6 @@

;; GLSL emacs mode
;; https://github.com/jimhourihan/glsl-mode
(use-package glsl-mode :defer t :ensure t)
(use-package glsl-mode :defer t :straight t)

;;; shaders.el ends here

M lib/slime.el => lib/slime.el +2 -2
@@ 5,7 5,7 @@

;; SLIME company goodness
;; https://github.com/anwyn/slime-company
(use-package slime-company :defer t :ensure t)
(use-package slime-company :defer t :straight t)

;; Superior LISP Interaction Mode for Emacs
;; https://common-lisp.net/project/slime/


@@ 15,7 15,7 @@
;; C-c C-k Compile and load current buffer
;; C-c C-q Invoke slime-close-parens-at-point
(use-package slime
  :ensure t
  :straight t
  :config
  ;; This breaks the default coloring of SLIME.  Net gain in my opinion.
  (add-hook 'slime-repl-mode-hook #'rainbow-delimiters-mode)

M lib/systemd.el => lib/systemd.el +1 -1
@@ 5,6 5,6 @@

;; I strongly dislike systemd... but this mode is pretty handy when you need it.
;; https://github.com/holomorph/systemd-mode
(use-package systemd :defer t :ensure t)
(use-package systemd :defer t :straight t)

;;; systemd.el ends here

M lib/terraform.el => lib/terraform.el +2 -2
@@ 5,12 5,12 @@

;; https://github.com/rafalcieslak/emacs-company-terraform
;; Company backend for terraform files
(use-package company-terraform :defer t :ensure t)
(use-package company-terraform :defer t :straight t)

;; Major mode of Terraform configuration file
;; https://github.com/syohex/emacs-terraform-mode
(use-package terraform-mode
  :ensure t
  :straight t
  :init (company-terraform-init))

;;; terraform.el ends here

M lib/toml.el => lib/toml.el +1 -1
@@ 5,6 5,6 @@

;; Emacs Mojor mode for editing TOML files
;; https://github.com/dryman/toml-mode.el
(use-package toml-mode :defer t :ensure t)
(use-package toml-mode :defer t :straight t)

;;; toml.el ends here

M lib/ui.el => lib/ui.el +5 -5
@@ 7,14 7,14 @@
  ;; diff-hl - highlight changes/diffs
  ;; https://github.com/dgutov/diff-hl
  (use-package diff-hl
    :ensure t
    :straight t
    :config
    (global-diff-hl-mode)))

(unless (getenv "EMACS_NO_FIREPLACE") ;; Don't allow Emacs to be a warm cozy fireplace.
;;; Warm cozy fireplace -- https://github.com/johanvts/emacs-fireplace
  (use-package fireplace
    :ensure t
    :straight t
    :init (defvar fireplace-mode-map)
    :bind (:map fireplace-mode-map
                ("d" . fireplace-down)


@@ 25,7 25,7 @@
  ;; Flycheck Status Emoji
  ;; https://github.com/liblit/flycheck-status-emoji
  (use-package flycheck-status-emoji
    :ensure t
    :straight t
    :config
    (flycheck-status-emoji-mode)))



@@ 45,7 45,7 @@
          (h/sml/default-theme "dark"))

      (use-package smart-mode-line
        :ensure t
        :straight t
        :config
        (setq
         sml/shorten-directory t


@@ 67,7 67,7 @@
  ;; Also, allow for using different themes;
  ;; from a list or perhaps an arbitrary one.
  (use-package material-theme
    :ensure t
    :straight t
    :config
    (if (getenv "EMACS_TRUST_THEMES")
        (setq h/trust-themes t)

M lib/yaml.el => lib/yaml.el +1 -1
@@ 7,7 7,7 @@
;; https://github.com/yoshiki/yaml-mode
;; TODO: don't always load company-ansible
(use-package yaml-mode
  :ensure t
  :straight t
  :defer t
  :config
  (add-hook 'yaml-mode-hook