Check if you can get a REPL at the shell using `cli-tools`. To do this follow the `Using the CLI tools` section in https://clojure.org/guides/repl/launching_a_basic_repl
(setq package-archives '(("gnu" . "https://elpa.gnu.org/packages/")
("melpa" . "https://melpa.org/packages/")))
(unless (package-installed-p 'use-package)
(package-refresh-contents)
(package-install 'use-package))
(require 'use-package)
(setq use-package-verbose t)
;; The :ensure keyword causes the package(s) to be installed automatically if not already present on your system:
(setq use-package-always-ensure t)
(use-package clojure-mode-extra-font-locking
:ensure t
:defer t)
(use-package paredit
:ensure t
:defer t
:init
(add-hook 'clojure-mode-hook 'enable-paredit-mode)
(add-hook 'cider-repl-mode-hook 'enable-paredit-mode)
(add-hook 'emacs-lisp-mode-hook 'enable-paredit-mode))
;; To add some colors to parens
(use-package rainbow-delimiters
:ensure t
:defer t
:init (add-hook 'prog-mode-hook 'rainbow-delimiters-mode))
(use-package flycheck-clj-kondo
:ensure t)
(use-package clojure-mode
:ensure t
:config
(require 'flycheck-clj-kondo))
(use-package cider
:ensure t
:defer t
:init
(setq cider-repl-pop-to-buffer-on-connect t
cider-show-error-buffer t
cider-auto-select-error-buffer t
cider-repl-history-file "~/.emacs.d/var/cider-history"
cider-repl-wrap-history t
cider-repl-history-size 100
cider-repl-use-clojure-font-lock t
cider-docview-fill-column 70
cider-stacktrace-fill-column 76
nrepl-popup-stacktraces nil
nrepl-log-messages nil
nrepl-hide-special-buffers t
cider-repl-use-pretty-printing t
cider-repl-result-prefix ";; => ")
:config
(add-hook 'cider-mode-hook 'eldoc-mode)
(add-hook 'cider-repl-mode-hook 'paredit-mode)
(add-hook 'cider-repl-mode-hook 'company-mode)
(add-hook 'cider-mode-hook 'company-mode)
(add-hook 'cider-mode-hook
(local-set-key (kbd "<C-return>") 'cider-eval-defun-at-point)))
;; Aggressively indent your clojure code
(use-package aggressive-indent
:ensure t
:defer t
:commands (aggressive-indent-mode)
:config
(add-hook 'clojure-mode-hook 'aggressive-indent-mode))
https://github.com/trycatcher/clj-hello
- Navigate to src/hello/core.clj.
- Start a Clojure REPL with C-c M-J
If all works as expected, you will have a working REPL. Parens away!