Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
;; -*- lexical-binding: nil; -*- ;; This file: ;; http://anggtwu.net/elisp/2025-slime.el.html ;; http://anggtwu.net/elisp/2025-slime.el ;; (find-angg "elisp/2025-slime.el") ;; Author: Eduardo Ochs <eduardoochs@gmail.com> ;; ;; (defun e () (interactive) (find-angg "elisp/2025-slime.el")) ;; See: (find-eepitch-intro "4. Badly-behaved targets") ;; (find-esetkey-links (kbd "<f9>") 'eepitch-b-set-target) (define-key eev-mode-map (kbd "<f9>") 'eepitch-b-set-target) ;; See: (find-es "slime" "ee-y-or-n-p") ;; (find-efunction 'slime-reinitialize-inferior-lisp-p) ;; (find-slimefile "slime.el" "(defun slime-reinitialize-inferior-lisp-p ") (defvar ee-slime-reinitialize-inferior-lisp-p) (setq ee-slime-reinitialize-inferior-lisp-p 'n) (setq ee-slime-reinitialize-inferior-lisp-p 'y) (defun ee-y-or-n-p (y-or-n message) (if y-or-n (eq y-or-n 'y) (y-or-n message))) (defun slime-reinitialize-inferior-lisp-p (program program-args env buffer) (let ((args (slime-inferior-lisp-args (get-buffer-process buffer)))) (and (equal (plist-get args :program) program) (equal (plist-get args :program-args) program-args) (equal (plist-get args :env) env) (not (ee-y-or-n-p ee-slime-reinitialize-inferior-lisp-p "Create an additional *inferior-lisp*? "))))) (defvar ee-slime-pbuffers) ;; Test: (eepitch-slime-pbuffers) (defun eepitch-slime-pbuffers () (cl-loop for buffer in (ee-buffers-in-mode 'slime-repl-mode) for package = (with-current-buffer buffer slime-buffer-package) collect (cons package buffer))) ;; Test: (eepitch-slime-set-pbuffers) (defun eepitch-slime-set-pbuffers () (setq ee-slime-pbuffers (eepitch-slime-pbuffers))) ;; Tests: (eepitch-slime-get-pbuffer "MAXIMA") ;; (eepitch-slime-get-pbuffer "COMMON-LISP-USER") ;; (eepitch-slime-get-pbuffer "FOO") ;; See: (find-es "emacs" "plists-and-alists") (defun eepitch-slime-get-pbuffer (package) (or (alist-get package ee-slime-pbuffers nil nil 'equal) (error "No %S in %S" package ee-slime-pbuffers))) ;; Tests: (eepitch-to-slime-pbuffer "MAXIMA") ;; (eepitch-to-slime-pbuffer "COMMON-LISP-USER") ;; (eepitch-to-slime-pbuffer "FOO") (defun eepitch-to-slime-pbuffer (package) (eepitch-to-buffer (eepitch-slime-get-pbuffer package))) ;; (eepitch-slime-set-pbuffers) ;; (eepitch-to-slime-pbuffer "MAXIMA")