aboutsummaryrefslogtreecommitdiff
path: root/shoshimacs.el
diff options
context:
space:
mode:
authorGrant Shangreaux <shoshin@cicadas.surf>2023-01-30 13:50:34 -0600
committerGrant Shangreaux <shoshin@cicadas.surf>2023-01-30 13:50:34 -0600
commit4837c4787dd98cb152589c8887624e5a142ceb54 (patch)
tree206060dabc887a3af5893d37c021a25d44db3d44 /shoshimacs.el
parent70a6011e0e0848e95b97bc817579f056108b95fb (diff)
Add: more robust [slime][common-lisp] configuration
Diffstat (limited to 'shoshimacs.el')
-rw-r--r--shoshimacs.el43
1 files changed, 39 insertions, 4 deletions
diff --git a/shoshimacs.el b/shoshimacs.el
index 14a0d40..592935e 100644
--- a/shoshimacs.el
+++ b/shoshimacs.el
@@ -178,8 +178,10 @@
(package-install 'crdt)
;;; Programming
+(setq inferior-lisp-program "sbcl")
+
(defvar slime-repo "https://github.com/slime/slime")
-(defvar slime-src-dir "~/src/slime")
+(defvar slime-src-dir (expand-file-name "~/src/slime/"))
(unless (file-directory-p slime-src-dir)
(shell-command
@@ -187,9 +189,28 @@
(add-to-list 'load-path slime-src-dir)
-(require 'slime)
-
-(setq inferior-lisp-program "sbcl")
+(let ((default-directory (concat slime-src-dir "doc/"))
+ (buf (get-buffer-create "*slime-make-info*")))
+ (unless (file-exists-p "slime.info")
+ (shell-command "make clean" "*slime-make-info*")
+ (shell-command "make slime.info" "*slime-make-info*")))
+
+(defvar slime-contribs
+ '(
+ slime-fancy ;; default value, includes many fundamental contribs
+ slime-mrepl
+ inferior-slime
+ slime-fuzzy
+ slime-asdf
+ slime-banner
+ slime-presentations
+ slime-xref-browser
+ slime-highlight-edits
+ slime-quicklisp
+ )
+ "Additional SLIME packages to load on start.")
+
+(require 'slime-autoloads)
(package-install 'json-mode)
@@ -306,6 +327,20 @@
(package-install 'autothemer)
+(setq telephone-line-lhs
+ '((evil . (telephone-line-evil-tag-segment))
+ (accent . (telephone-line-vc-segment
+ telephone-line-erc-modified-channels-segment
+ telephone-line-process-segment))
+ (nil . (telephone-line-minor-mode-segment
+ telephone-line-buffer-segment))))
+(setq telephone-line-rhs
+ '((nil . (telephone-line-misc-info-segment))
+ (accent . (telephone-line-major-mode-segment))
+ (evil . (telephone-line-airline-position-segment))))
+
+(telephone-line-mode t)
+
(defun screenshot-svg ()
"Save a screenshot of the current frame as an SVG image.
Saves to a temp file and puts the filename in the kill ring."