clojure-emacs / clojure-emacs/cider
Persistent REPL history improvements
- Dominant language
- Emacs Lisp
- Stars
- 3.7k
- Forks
- 651
- Avg merge
- 11h 6m
- Merged PRs (30d)
- 33
Description
I am opening this as a restart of #2353.
Would be nice to have:
1. project level persistent REPL history customized directly by `cider-repl-history-file`. Some ideas on the implementation:
- if that file is relative, then the history should be relative to current project or directory
- if a function, function is called with no arguments and should return a file
- if a cons, car is file to be used for REPLS started outisde projects and cdr for those within projects
- on remotes it's a bit tricky but I think `tramp-auto-save-directory` should be used to store history.
- consider using `backup-directory-alist` for the history file or at lest offer it as an option
2. history should be differentiated between types of repls clj/cljs
3. have history on by default?
Contributor guide
Research direction
Start by tracing how cider-repl-history-file is handled and how REPL types and remote sessions are distinguished. Define the project-relative, function, cons, remote-storage, and clj/cljs history behavior, then verify each requested case and the default-history decision.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clojure, emacs-lisp
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100