From 6bf31c8a89500efa85526cfba8638d20c6d9d419 Mon Sep 17 00:00:00 2001 From: Evie Litherland-Smith Date: Tue, 7 Nov 2023 06:26:37 +0000 Subject: [PATCH] Emacs config additions Load custom file if exists Add ligature support Setup auth sources (pass and secret store) --- home/emacs/init.el | 83 +++++++++++++++++++++++++++++++++++++++++- home/emacs/init.org | 89 ++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 168 insertions(+), 4 deletions(-) diff --git a/home/emacs/init.el b/home/emacs/init.el index 9b3f2257..e0fe1fd7 100644 --- a/home/emacs/init.el +++ b/home/emacs/init.el @@ -1,6 +1,10 @@ +(setq custom-file (locate-user-emacs-file "custom.el")) +(when (and custom-file (file-exists-p custom-file)) + (load custom-file nil 'nomessage)) + (setq user-full-name "Evie Litherland-Smith" user-mail-address "evie@xenia.me.uk" - custom-file (locate-user-emacs-file "custom.el") + use-short-answers t load-prefer-newer t indent-tabs-mode nil global-auto-revert-non-file-buffers t @@ -50,6 +54,81 @@ ("stable" . 70) ("melpa" . 0)))) +(when (require 'auth-source nil :noerror) + (setq auth-sources '("secrets:Login")) + (auth-source-pass-enable)) + +(use-package ligature + :ensure t + :config + ;; Enable the "www" ligature in every possible major mode + (ligature-set-ligatures 't '("www")) + ;; Enable traditional ligature support in eww-mode, if the + ;; `variable-pitch' face supports it + (ligature-set-ligatures 'eww-mode '("ff" "fi" "ffi")) + ;; Enable all Cascadia and Fira Code ligatures in programming modes + (ligature-set-ligatures 'prog-mode + '(;; == === ==== => =| =>>=>=|=>==>> ==< =/=//=// =~ + ;; =:= =!= + ("=" (rx (+ (or ">" "<" "|" "/" "~" ":" "!" "=")))) + ;; ;; ;;; + (";" (rx (+ ";"))) + ;; && &&& + ("&" (rx (+ "&"))) + ;; !! !!! !. !: !!. != !== !~ + ("!" (rx (+ (or "=" "!" "\." ":" "~")))) + ;; ?? ??? ?: ?= ?. + ("?" (rx (or ":" "=" "\." (+ "?")))) + ;; %% %%% + ("%" (rx (+ "%"))) + ;; |> ||> |||> ||||> |] |} || ||| |-> ||-|| + ;; |->>-||-<<-| |- |== ||=|| + ;; |==>>==<<==<=>==//==/=!==:===> + ("|" (rx (+ (or ">" "<" "|" "/" ":" "!" "}" "\]" + "-" "=" )))) + ;; \\ \\\ \/ + ("\\" (rx (or "/" (+ "\\")))) + ;; ++ +++ ++++ +> + ("+" (rx (or ">" (+ "+")))) + ;; :: ::: :::: :> :< := :// ::= + (":" (rx (or ">" "<" "=" "//" ":=" (+ ":")))) + ;; // /// //// /\ /* /> /===:===!=//===>>==>==/ + ("/" (rx (+ (or ">" "<" "|" "/" "\\" "\*" ":" "!" + "=")))) + ;; .. ... .... .= .- .? ..= ..< + ("\." (rx (or "=" "-" "\?" "\.=" "\.<" (+ "\.")))) + ;; -- --- ---- -~ -> ->> -| -|->-->>->--<<-| + ("-" (rx (+ (or ">" "<" "|" "~" "-")))) + ;; *> */ *) ** *** **** + ("*" (rx (or ">" "/" ")" (+ "*")))) + ;; www wwww + ("w" (rx (+ "w"))) + ;; <> >->--<<-| + ("-" (rx (+ (or ">" "<" "|" "~" "-")))) + ;; *> */ *) ** *** **** + ("*" (rx (or ">" "/" ")" (+ "*")))) + ;; www wwww + ("w" (rx (+ "w"))) + ;; <>