.
This commit is contained in:
parent
9c8e94145f
commit
7cfc00fd43
4 changed files with 203 additions and 121 deletions
70
config.scm
70
config.scm
|
@ -18,20 +18,11 @@
|
||||||
|
|
||||||
|
|
||||||
;; [[file:config.org::*Modules][Modules:1]]
|
;; [[file:config.org::*Modules][Modules:1]]
|
||||||
(use-modules (gnu)
|
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
|
||||||
(gnu image)
|
Wrong type to apply: "gnu"
|
||||||
(gnu services authentication)
|
|
||||||
(gnu services base)
|
Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
|
||||||
(gnu services dbus)
|
scheme@(guile-user) [1]>
|
||||||
(gnu services desktop)
|
|
||||||
(gnu services linux)
|
|
||||||
(gnu services networking)
|
|
||||||
(gnu services pm)
|
|
||||||
(gnu services virtualization)
|
|
||||||
(gnu services xorg)
|
|
||||||
(gnu system nss)
|
|
||||||
(nongnu packages linux)
|
|
||||||
(nongnu system linux-initrd))
|
|
||||||
;; Modules:1 ends here
|
;; Modules:1 ends here
|
||||||
|
|
||||||
;; Service Modules
|
;; Service Modules
|
||||||
|
@ -42,7 +33,11 @@
|
||||||
|
|
||||||
|
|
||||||
;; [[file:config.org::*Service Modules][Service Modules:1]]
|
;; [[file:config.org::*Service Modules][Service Modules:1]]
|
||||||
(use-service-modules desktop xorg)
|
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
|
||||||
|
Wrong type to apply: "desktop"
|
||||||
|
|
||||||
|
Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
|
||||||
|
scheme@(guile-user) [1]>
|
||||||
;; Service Modules:1 ends here
|
;; Service Modules:1 ends here
|
||||||
|
|
||||||
;; Package Modules
|
;; Package Modules
|
||||||
|
@ -62,17 +57,11 @@
|
||||||
|
|
||||||
|
|
||||||
;; [[file:config.org::*Package Modules][Package Modules:1]]
|
;; [[file:config.org::*Package Modules][Package Modules:1]]
|
||||||
(use-package-modules bootloaders
|
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
|
||||||
certs
|
Wrong type to apply: "bootloaders"
|
||||||
emacs
|
|
||||||
emacs-xyz
|
Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
|
||||||
fonts
|
scheme@(guile-user) [1]>
|
||||||
pciutils
|
|
||||||
readline
|
|
||||||
terminals
|
|
||||||
version-control
|
|
||||||
wm
|
|
||||||
xorg)
|
|
||||||
;; Package Modules:1 ends here
|
;; Package Modules:1 ends here
|
||||||
|
|
||||||
;; File System
|
;; File System
|
||||||
|
@ -146,13 +135,11 @@
|
||||||
%base-user-accounts))
|
%base-user-accounts))
|
||||||
(packages
|
(packages
|
||||||
(append
|
(append
|
||||||
(list emacs
|
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
|
||||||
emacs-desktop-environment
|
Wrong type to apply: "emacs"
|
||||||
font-terminus
|
|
||||||
git
|
Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue.
|
||||||
hwdata
|
scheme@(guile-user) [1]>
|
||||||
nss-certs
|
|
||||||
readline)
|
|
||||||
%base-packages))
|
%base-packages))
|
||||||
(services
|
(services
|
||||||
(append
|
(append
|
||||||
|
@ -169,22 +156,7 @@
|
||||||
(authorized-keys
|
(authorized-keys
|
||||||
(append (list (plain-file "non-guix.pub"
|
(append (list (plain-file "non-guix.pub"
|
||||||
"<<nonguix-pubkey>>")))))))
|
"<<nonguix-pubkey>>")))))))
|
||||||
(list
|
nil
|
||||||
(service tlp-service-type)
|
|
||||||
(service thermald-service-type
|
|
||||||
(thermald-configuration
|
|
||||||
(adaptive? #t)))
|
|
||||||
(service bluetooth-service-type)
|
|
||||||
(service earlyoom-service-type
|
|
||||||
(earlyoom-configuration
|
|
||||||
(minimum-available-memory 5)
|
|
||||||
(minimum-free-swap 5)))
|
|
||||||
(service inputattach-service-type)
|
|
||||||
(service libvirt-service-type
|
|
||||||
(libvirt-configuration
|
|
||||||
(unix-sock-group "libvirt")))
|
|
||||||
(service fstrim-service-type)
|
|
||||||
(service fprintd-service-type))
|
|
||||||
(list
|
(list
|
||||||
(service greetd-service-type
|
(service greetd-service-type
|
||||||
(greetd-configuration
|
(greetd-configuration
|
||||||
|
|
1
home/emacs/early-init.el
Normal file
1
home/emacs/early-init.el
Normal file
|
@ -0,0 +1 @@
|
||||||
|
(setq package-enable-at-startup nil)
|
|
@ -12,8 +12,8 @@
|
||||||
;; hypermedia i18n internal languages lisp local maint mail matching
|
;; hypermedia i18n internal languages lisp local maint mail matching
|
||||||
;; mouse multimedia news outlines processes terminals tex tools unix
|
;; mouse multimedia news outlines processes terminals tex tools unix
|
||||||
;; vc wp
|
;; vc wp
|
||||||
;; Homepage: https://github.com/dziltener@lyrion.ch/init
|
;; Homepage: https://gitea.lyrion.ch/zilti/guixconfig
|
||||||
;; Package-Requires: ((emacs "24.3"))
|
;; Package-Requires: ((emacs "29.1"))
|
||||||
;;
|
;;
|
||||||
;; This file is not part of GNU Emacs.
|
;; This file is not part of GNU Emacs.
|
||||||
;;
|
;;
|
||||||
|
@ -32,6 +32,8 @@
|
||||||
(when (file-exists-p custom-file)
|
(when (file-exists-p custom-file)
|
||||||
(load custom-file))
|
(load custom-file))
|
||||||
|
|
||||||
|
(defvar init-dir (file-name-directory (or load-file-name (buffer-file-name))))
|
||||||
|
|
||||||
;;;; Personal Information Setup
|
;;;; Personal Information Setup
|
||||||
(setq user-full-name "Daniel Ziltener"
|
(setq user-full-name "Daniel Ziltener"
|
||||||
user-mail-address "dziltener@lyrion.ch")
|
user-mail-address "dziltener@lyrion.ch")
|
||||||
|
@ -41,19 +43,67 @@
|
||||||
|
|
||||||
;;;; Straight.el
|
;;;; Straight.el
|
||||||
|
|
||||||
(defvar bootstrap-version)
|
;; (defvar bootstrap-version)
|
||||||
(let ((bootstrap-file
|
;; (let ((bootstrap-file
|
||||||
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
|
;; (expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
|
||||||
(bootstrap-version 6))
|
;; (bootstrap-version 6))
|
||||||
(unless (file-exists-p bootstrap-file)
|
;; (unless (file-exists-p bootstrap-file)
|
||||||
(with-current-buffer
|
;; (with-current-buffer
|
||||||
(url-retrieve-synchronously
|
;; (url-retrieve-synchronously
|
||||||
"https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el"
|
;; "https://raw.githubusercontent.com/radian-software/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))
|
||||||
(setq straight-use-package-by-default t)
|
;; (setq straight-use-package-by-default t)
|
||||||
|
|
||||||
|
;;;; Elpaca
|
||||||
|
|
||||||
|
;;;;; Installation
|
||||||
|
|
||||||
|
(defvar elpaca-installer-version 0.6)
|
||||||
|
(defvar elpaca-directory (expand-file-name "elpaca/" user-emacs-directory))
|
||||||
|
(defvar elpaca-builds-directory (expand-file-name "builds/" elpaca-directory))
|
||||||
|
(defvar elpaca-repos-directory (expand-file-name "repos/" elpaca-directory))
|
||||||
|
(defvar elpaca-order '(elpaca :repo "https://github.com/progfolio/elpaca.git"
|
||||||
|
:ref nil
|
||||||
|
:files (:defaults "elpaca-test.el" (:exclude "extensions"))
|
||||||
|
:build (:not elpaca--activate-package)))
|
||||||
|
(let* ((repo (expand-file-name "elpaca/" elpaca-repos-directory))
|
||||||
|
(build (expand-file-name "elpaca/" elpaca-builds-directory))
|
||||||
|
(order (cdr elpaca-order))
|
||||||
|
(default-directory repo))
|
||||||
|
(add-to-list 'load-path (if (file-exists-p build) build repo))
|
||||||
|
(unless (file-exists-p repo)
|
||||||
|
(make-directory repo t)
|
||||||
|
(when (< emacs-major-version 28) (require 'subr-x))
|
||||||
|
(condition-case-unless-debug err
|
||||||
|
(if-let ((buffer (pop-to-buffer-same-window "*elpaca-bootstrap*"))
|
||||||
|
((zerop (call-process "git" nil buffer t "clone"
|
||||||
|
(plist-get order :repo) repo)))
|
||||||
|
((zerop (call-process "git" nil buffer t "checkout"
|
||||||
|
(or (plist-get order :ref) "--"))))
|
||||||
|
(emacs (concat invocation-directory invocation-name))
|
||||||
|
((zerop (call-process emacs nil buffer nil "-Q" "-L" "." "--batch"
|
||||||
|
"--eval" "(byte-recompile-directory \".\" 0 'force)")))
|
||||||
|
((require 'elpaca))
|
||||||
|
((elpaca-generate-autoloads "elpaca" repo)))
|
||||||
|
(progn (message "%s" (buffer-string)) (kill-buffer buffer))
|
||||||
|
(error "%s" (with-current-buffer buffer (buffer-string))))
|
||||||
|
((error) (warn "%s" err) (delete-directory repo 'recursive))))
|
||||||
|
(unless (require 'elpaca-autoloads nil t)
|
||||||
|
(require 'elpaca)
|
||||||
|
(elpaca-generate-autoloads "elpaca" repo)
|
||||||
|
(load "./elpaca-autoloads")))
|
||||||
|
(add-hook 'after-init-hook #'elpaca-process-queues)
|
||||||
|
(elpaca `(,@elpaca-order))
|
||||||
|
|
||||||
|
;;;;; use-package integration
|
||||||
|
|
||||||
|
(elpaca elpaca-use-package
|
||||||
|
(elpaca-use-package-mode)
|
||||||
|
(setq elpaca-use-package-by-default t))
|
||||||
|
(elpaca-wait)
|
||||||
|
|
||||||
;;;; Package Management Configuration
|
;;;; Package Management Configuration
|
||||||
;; See: https://github.com/radian-software/el-patch
|
;; See: https://github.com/radian-software/el-patch
|
||||||
|
@ -78,6 +128,7 @@
|
||||||
|
|
||||||
;;;; Emacs
|
;;;; Emacs
|
||||||
(use-package emacs
|
(use-package emacs
|
||||||
|
:elpaca nil
|
||||||
:delight (eldoc-mode " ")
|
:delight (eldoc-mode " ")
|
||||||
:custom
|
:custom
|
||||||
(completion-cycle-threshold 10)
|
(completion-cycle-threshold 10)
|
||||||
|
@ -106,6 +157,7 @@
|
||||||
|
|
||||||
;;;; Org Mode
|
;;;; Org Mode
|
||||||
(use-package org
|
(use-package org
|
||||||
|
:elpaca (:repo "https://git.savannah.gnu.org/git/emacs/org-mode.git" :branch "emacs-sync")
|
||||||
:ensure t
|
:ensure t
|
||||||
:custom
|
:custom
|
||||||
(org-babel-load-languages '((emacs-lisp . t)
|
(org-babel-load-languages '((emacs-lisp . t)
|
||||||
|
@ -202,7 +254,8 @@
|
||||||
(add-to-list 'default-frame-alist '(alpha-background . 80))
|
(add-to-list 'default-frame-alist '(alpha-background . 80))
|
||||||
|
|
||||||
(use-package lambda-line
|
(use-package lambda-line
|
||||||
:straight (:type git :host github :repo "lambda-emacs/lambda-line")
|
;;:straight (:type git :host github :repo "lambda-emacs/lambda-line")
|
||||||
|
:elpaca (:host github :repo "lambda-emacs/lambda-line")
|
||||||
:custom
|
:custom
|
||||||
(lambda-line-icon-time t) ;; requires ClockFace font (see below)
|
(lambda-line-icon-time t) ;; requires ClockFace font (see below)
|
||||||
(lambda-line-clockface-update-fontset "ClockFaceRect") ;; set clock icon
|
(lambda-line-clockface-update-fontset "ClockFaceRect") ;; set clock icon
|
||||||
|
@ -238,7 +291,8 @@
|
||||||
(setq mode-line-format (list "%_"))))
|
(setq mode-line-format (list "%_"))))
|
||||||
|
|
||||||
(use-package lambda-themes
|
(use-package lambda-themes
|
||||||
:straight (:type git :host github :repo "lambda-emacs/lambda-themes")
|
;;:straight (:type git :host github :repo "lambda-emacs/lambda-themes")
|
||||||
|
:elpaca (:host github :repo "lambda-emacs/lambda-themes")
|
||||||
:custom
|
:custom
|
||||||
(lambda-themes-set-italic-comments t)
|
(lambda-themes-set-italic-comments t)
|
||||||
(lambda-themes-set-italic-keywords t)
|
(lambda-themes-set-italic-keywords t)
|
||||||
|
@ -299,6 +353,7 @@
|
||||||
;;;; Search, Completion, Execution
|
;;;; Search, Completion, Execution
|
||||||
;;;;; Preliminary Packages
|
;;;;; Preliminary Packages
|
||||||
(use-package savehist
|
(use-package savehist
|
||||||
|
:elpaca nil
|
||||||
:init
|
:init
|
||||||
(savehist-mode))
|
(savehist-mode))
|
||||||
|
|
||||||
|
@ -312,11 +367,8 @@
|
||||||
completion-category-overrides '((file (styles basic partial-completion)))))
|
completion-category-overrides '((file (styles basic partial-completion)))))
|
||||||
|
|
||||||
(use-package embark-consult
|
(use-package embark-consult
|
||||||
:after (embark consult)
|
|
||||||
:hook
|
:hook
|
||||||
(embark-collect-mode . consult-preview-at-point-mode))
|
(embark-collect-mode . consult-preview-at-point-mode)
|
||||||
|
|
||||||
(use-package consult
|
|
||||||
:config
|
:config
|
||||||
(require 'consult-flymake)
|
(require 'consult-flymake)
|
||||||
(require 'consult-xref)
|
(require 'consult-xref)
|
||||||
|
@ -328,12 +380,9 @@
|
||||||
("<leader>gb" . 'consult-project-buffer)
|
("<leader>gb" . 'consult-project-buffer)
|
||||||
("<leader>g/" . 'consult-git-grep)
|
("<leader>g/" . 'consult-git-grep)
|
||||||
("<leader>/" . 'consult-grep)
|
("<leader>/" . 'consult-grep)
|
||||||
("/" . 'consult-line)))
|
("/" . 'consult-line))
|
||||||
|
("C-<SPC>" . 'embark-act)
|
||||||
(use-package embark
|
("C-M-<return>" . 'embark-bindings))
|
||||||
:bind
|
|
||||||
("C-<SPC>" . 'embark-act)
|
|
||||||
("C-M-<return>" . 'embark-bindings))
|
|
||||||
|
|
||||||
(use-package wgrep
|
(use-package wgrep
|
||||||
:config
|
:config
|
||||||
|
@ -449,6 +498,7 @@
|
||||||
:hook
|
:hook
|
||||||
evil-mode
|
evil-mode
|
||||||
(evil-mode . evil-snipe-override-mode)
|
(evil-mode . evil-snipe-override-mode)
|
||||||
|
(evil-mode . evil-snipe-mode)
|
||||||
(magit-mode . turn-off-evil-snipe-override-mode)
|
(magit-mode . turn-off-evil-snipe-override-mode)
|
||||||
;; See https://github.com/hlissner/evil-snipe/issues/95
|
;; See https://github.com/hlissner/evil-snipe/issues/95
|
||||||
;; :config
|
;; :config
|
||||||
|
@ -479,6 +529,29 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
(transpose-sexps 1)
|
(transpose-sexps 1)
|
||||||
(forward-sexp -1))
|
(forward-sexp -1))
|
||||||
|
|
||||||
|
(defvar last-sexp nil)
|
||||||
|
|
||||||
|
(defun cc/clone-sexp ()
|
||||||
|
"Clone the sexp right after the cursor."
|
||||||
|
(interactive)
|
||||||
|
(call-interactively #'mark-sexp)
|
||||||
|
(call-interactively #'kill-ring-save)
|
||||||
|
(call-interactively #'evil-paste-before)
|
||||||
|
(call-interactively #'forward-char)
|
||||||
|
(call-interactively #'paredit-newline))
|
||||||
|
|
||||||
|
(defun cc/slurp-forward ()
|
||||||
|
"Slurps forward when the key is after the closing paren."
|
||||||
|
(interactive)
|
||||||
|
(call-interactively #'backward-char)
|
||||||
|
(call-interactively #'paredit-forward-slurp-sexp))
|
||||||
|
|
||||||
|
(defun cc/barf-forward ()
|
||||||
|
"Barfs forward even when the key is after the closing paren."
|
||||||
|
(interactive)
|
||||||
|
(call-interactively #'backward-char)
|
||||||
|
(call-interactively #'paredit-forward-barf-sexp))
|
||||||
|
|
||||||
(defun looking-at-opening-paren ()
|
(defun looking-at-opening-paren ()
|
||||||
(looking-at (rx (or "(" "{" "["))))
|
(looking-at (rx (or "(" "{" "["))))
|
||||||
|
|
||||||
|
@ -486,58 +559,90 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
(looking-back (rx (or ")" "}" "]"))))
|
(looking-back (rx (or ")" "}" "]"))))
|
||||||
|
|
||||||
;;;;; Basic
|
;;;;; Basic
|
||||||
(use-package smartparens
|
(use-package symex
|
||||||
:delight (smartparens-mode " ")
|
:custom
|
||||||
|
(symex-modal-backend 'evil)
|
||||||
|
:config
|
||||||
|
(symex-initialize)
|
||||||
|
:bind
|
||||||
|
(:map evil-insert-state-map
|
||||||
|
("C-ß" . #'symex-mode-interface)))
|
||||||
|
|
||||||
|
(use-package paredit
|
||||||
:hook
|
:hook
|
||||||
(smartparens-mode . show-smartparens-mode)
|
clojure-mode
|
||||||
(smartparens-mode . smartparens-strict-mode)
|
|
||||||
clojure-ts-mode
|
|
||||||
emacs-lisp-mode
|
emacs-lisp-mode
|
||||||
scheme-mode
|
scheme-mode
|
||||||
:custom
|
|
||||||
(sp-undo-pairs-separately t)
|
|
||||||
:config
|
:config
|
||||||
(add-to-list 'sp-clojure-modes 'clojure-ts-mode)
|
(evil-define-key 'insert paredit-mode-map
|
||||||
(add-to-list 'sp-clojure-modes 'clojurec-ts-mode)
|
|
||||||
(add-to-list 'sp-clojure-modes 'clojurescript-ts-mode)
|
|
||||||
(add-to-list 'sp-lisp-modes 'clojure-ts-mode)
|
|
||||||
(add-to-list 'sp-lisp-modes 'clojurec-ts-mode)
|
|
||||||
(add-to-list 'sp-lisp-modes 'clojurescript-ts-mode)
|
|
||||||
(sp-local-pair '(emacs-lisp-mode scheme-mode clojure-ts-mode)
|
|
||||||
"'" nil)
|
|
||||||
(sp-local-pair '(emacs-lisp-mode scheme-mode clojure-ts-mode)
|
|
||||||
"`" nil)
|
|
||||||
(evil-define-key 'insert smartparens-mode-map
|
|
||||||
(kbd "r") (conditional-keybind #'looking-at-opening-paren
|
(kbd "r") (conditional-keybind #'looking-at-opening-paren
|
||||||
#'sp-raise-sexp)
|
#'paredit-raise-sexp)
|
||||||
(kbd "w") (conditional-keybind #'looking-at-opening-paren
|
(kbd "w") (conditional-keybind #'looking-at-opening-paren
|
||||||
#'cc/move-sexp-backward)
|
#'cc/move-sexp-backward)
|
||||||
(kbd "s") (conditional-keybind #'looking-at-opening-paren
|
(kbd "s") (conditional-keybind #'looking-at-opening-paren
|
||||||
#'cc/move-sexp-forward)
|
#'cc/move-sexp-forward)
|
||||||
(kbd "c") (conditional-keybind #'looking-at-opening-paren
|
(kbd "c") (conditional-keybind #'looking-at-opening-paren
|
||||||
#'sp-clone-sexp)
|
#'cc/clone-sexp)
|
||||||
(kbd "m") (conditional-keybind #'looking-at-opening-paren
|
|
||||||
#'sp-mark-sexp)
|
|
||||||
(kbd "DEL") (conditional-keybind #'being-past-closing-paren
|
|
||||||
#'sp-backward-delete-sexp
|
|
||||||
#'evil-delete-backward-char-and-join)
|
|
||||||
(kbd ">") (conditional-keybind #'being-past-closing-paren
|
(kbd ">") (conditional-keybind #'being-past-closing-paren
|
||||||
(lambda (prefix)
|
#'cc/slurp-forward)
|
||||||
(interactive "P")
|
|
||||||
(call-interactively #'backward-char)
|
|
||||||
(call-interactively #'sp-forward-slurp-sexp)
|
|
||||||
(call-interactively #'sp-forward-sexp)
|
|
||||||
(call-interactively #'forward-char)))
|
|
||||||
(kbd "<") (conditional-keybind #'being-past-closing-paren
|
(kbd "<") (conditional-keybind #'being-past-closing-paren
|
||||||
(lambda (prefix)
|
#'cc/barf-forward)))
|
||||||
(interactive "P")
|
|
||||||
(call-interactively #'backward-char)
|
|
||||||
(call-interactively #'sp-forward-barf-sexp)
|
|
||||||
(call-interactively #'forward-char)))))
|
|
||||||
|
|
||||||
(use-package evil-cleverparens
|
;; (use-package smartparens
|
||||||
:after smartparens
|
;; :delight (smartparens-mode " ")
|
||||||
:hook smartparens)
|
;; :hook
|
||||||
|
;; (smartparens-mode . show-smartparens-mode)
|
||||||
|
;; (smartparens-mode . smartparens-strict-mode)
|
||||||
|
;; clojure-ts-mode
|
||||||
|
;; emacs-lisp-mode
|
||||||
|
;; scheme-mode
|
||||||
|
;; :custom
|
||||||
|
;; (sp-undo-pairs-separately t)
|
||||||
|
;; :config
|
||||||
|
;; (add-to-list 'sp-clojure-modes 'clojure-ts-mode)
|
||||||
|
;; (add-to-list 'sp-clojure-modes 'clojurec-ts-mode)
|
||||||
|
;; (add-to-list 'sp-clojure-modes 'clojurescript-ts-mode)
|
||||||
|
;; (add-to-list 'sp-lisp-modes 'clojure-ts-mode)
|
||||||
|
;; (add-to-list 'sp-lisp-modes 'clojurec-ts-mode)
|
||||||
|
;; (add-to-list 'sp-lisp-modes 'clojurescript-ts-mode)
|
||||||
|
;; ;; TODO: Remove the following three lines once merge request got accepted
|
||||||
|
;; (load-file (concat init-dir "lib/smartparens-clojure.el"))
|
||||||
|
;; (load-file (concat init-dir "lib/smartparens-emacs-lisp.el"))
|
||||||
|
;; (load-file (concat init-dir "lib/smartparens-scheme.el"))
|
||||||
|
;; (require 'smartparens-clojure)
|
||||||
|
;; (require 'smartparens-emacs-lisp)
|
||||||
|
;; (require 'smartparens-scheme)
|
||||||
|
;; (evil-define-key 'insert smartparens-mode-map
|
||||||
|
;; (kbd "r") (conditional-keybind #'looking-at-opening-paren
|
||||||
|
;; #'sp-raise-sexp)
|
||||||
|
;; (kbd "w") (conditional-keybind #'looking-at-opening-paren
|
||||||
|
;; #'cc/move-sexp-backward)
|
||||||
|
;; (kbd "s") (conditional-keybind #'looking-at-opening-paren
|
||||||
|
;; #'cc/move-sexp-forward)
|
||||||
|
;; (kbd "c") (conditional-keybind #'looking-at-opening-paren
|
||||||
|
;; #'sp-clone-sexp)
|
||||||
|
;; (kbd "m") (conditional-keybind #'looking-at-opening-paren
|
||||||
|
;; #'sp-mark-sexp)
|
||||||
|
;; (kbd "DEL") (conditional-keybind #'being-past-closing-paren
|
||||||
|
;; #'sp-backward-delete-sexp
|
||||||
|
;; #'evil-delete-backward-char-and-join)
|
||||||
|
;; (kbd ">") (conditional-keybind #'being-past-closing-paren
|
||||||
|
;; (lambda (prefix)
|
||||||
|
;; (interactive "P")
|
||||||
|
;; (call-interactively #'backward-char)
|
||||||
|
;; (call-interactively #'sp-forward-slurp-sexp)
|
||||||
|
;; (call-interactively #'sp-forward-sexp)
|
||||||
|
;; (call-interactively #'forward-char)))
|
||||||
|
;; (kbd "<") (conditional-keybind #'being-past-closing-paren
|
||||||
|
;; (lambda (prefix)
|
||||||
|
;; (interactive "P")
|
||||||
|
;; (call-interactively #'backward-char)
|
||||||
|
;; (call-interactively #'sp-forward-barf-sexp)
|
||||||
|
;; (call-interactively #'forward-char)))))
|
||||||
|
|
||||||
|
;; (use-package evil-cleverparens
|
||||||
|
;; :after smartparens
|
||||||
|
;; :hook smartparens)
|
||||||
|
|
||||||
;;;;; Visual Aid
|
;;;;; Visual Aid
|
||||||
;; (use-package rainbow-delimiters
|
;; (use-package rainbow-delimiters
|
||||||
|
@ -580,7 +685,7 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
(setq-default eglot-workspace-configuration
|
(setq-default eglot-workspace-configuration
|
||||||
'((clojure-lsp (maxCompletions . 300))))
|
'((clojure-lsp (maxCompletions . 300))))
|
||||||
(add-to-list 'eglot-server-programs
|
(add-to-list 'eglot-server-programs
|
||||||
'((clojure-ts-mode clojurec-ts-mode clojurescript-ts-mode)
|
'((clojure-mode clojurec-mode clojurescript-mode)
|
||||||
"clojure-lsp"
|
"clojure-lsp"
|
||||||
:initializationOptions
|
:initializationOptions
|
||||||
(:preferences
|
(:preferences
|
||||||
|
@ -645,9 +750,8 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
'(clojurescript-ts-mode . clojure)))
|
'(clojurescript-ts-mode . clojure)))
|
||||||
|
|
||||||
(use-package cider
|
(use-package cider
|
||||||
|
:elpaca (:host github :repo "clojure-emacs/cider" :tag "v1.12.0")
|
||||||
:delight (cider-mode '(:eval (concat " [" (cider--modeline-info) "]")))
|
:delight (cider-mode '(:eval (concat " [" (cider--modeline-info) "]")))
|
||||||
:hook
|
|
||||||
(clojure-ts-mode . cider-mode)
|
|
||||||
:config
|
:config
|
||||||
(evil-define-key 'insert 'cider-mode-map
|
(evil-define-key 'insert 'cider-mode-map
|
||||||
"C-x C-e" #'cider-eval-last-sexp)
|
"C-x C-e" #'cider-eval-last-sexp)
|
||||||
|
@ -679,13 +783,15 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
(use-package paren-face
|
(use-package paren-face
|
||||||
:hook
|
:hook
|
||||||
scheme-mode
|
scheme-mode
|
||||||
emacs-lisp-mode)
|
emacs-lisp-mode
|
||||||
|
clojure-ts-mode)
|
||||||
|
|
||||||
(use-package highlight-parentheses
|
(use-package highlight-parentheses
|
||||||
:hook prog-mode)
|
:hook prog-mode)
|
||||||
|
|
||||||
;;;;;; Chicken Scheme
|
;;;;;; Chicken Scheme
|
||||||
(use-package scheme
|
(use-package scheme
|
||||||
|
:elpaca nil
|
||||||
:config
|
:config
|
||||||
(setq prettify-symbols-alist
|
(setq prettify-symbols-alist
|
||||||
'(("lambda" . "λ")))
|
'(("lambda" . "λ")))
|
||||||
|
@ -771,7 +877,9 @@ Point must be at the beginning of balanced expression (sexp)."
|
||||||
;;;; Communication
|
;;;; Communication
|
||||||
;;;;; IRC
|
;;;;; IRC
|
||||||
(use-package rcirc
|
(use-package rcirc
|
||||||
|
:elpaca nil
|
||||||
:ensure t
|
:ensure t
|
||||||
|
:after password-store
|
||||||
:custom
|
:custom
|
||||||
(rcirc-server-alist
|
(rcirc-server-alist
|
||||||
`(("liberachat.irc.lyrion.ch"
|
`(("liberachat.irc.lyrion.ch"
|
||||||
|
|
|
@ -134,6 +134,7 @@
|
||||||
("fuzzel/fuzzel.ini" ,(local-file "./fuzzel/fuzzel.ini"))
|
("fuzzel/fuzzel.ini" ,(local-file "./fuzzel/fuzzel.ini"))
|
||||||
("git/config" ,(local-file "./git/config"))
|
("git/config" ,(local-file "./git/config"))
|
||||||
("emacs/init.el" ,(local-file "./emacs/init.el"))
|
("emacs/init.el" ,(local-file "./emacs/init.el"))
|
||||||
|
("emacs/early-init.el" ,(local-file "./emacs/early-init.el"))
|
||||||
("emacs/init.org" ,(local-file "./emacs/init.org"))
|
("emacs/init.org" ,(local-file "./emacs/init.org"))
|
||||||
("emacs/templates" ,(local-file "./emacs/templates"))
|
("emacs/templates" ,(local-file "./emacs/templates"))
|
||||||
("kitty/kitty.conf" ,(local-file "./kitty/kitty.conf"))
|
("kitty/kitty.conf" ,(local-file "./kitty/kitty.conf"))
|
||||||
|
|
Loading…
Reference in a new issue