Я играл с большим количеством кода в консоли replix, как я могу его очистить? Я бы хотел новый, не перезагружая его. Это можно сделать?
Могу ли я почистить реплику?
Ответ 1
Если вы хотите очистить текущее пространство имен всех временных переменных и функций, которые вы указали, вы можете использовать этот один лайнер (или выполнить его функцию):
(map #(ns-unmap *ns* %) (keys (ns-interns *ns*)))
или
(ns myutil)
(defn ns-clean
"Remove all internal mappings from a given name space or the current one if no parameter given."
([] (ns-clean *ns*))
([ns] (map #(ns-unmap ns %) (keys (ns-interns ns)))))
(ns mytest)
... make loads of junk ...
(myutil/ns-clean)
... great!!! I can now make all new junk ...
Он не претендует на то, чтобы дать вам скрипучее чистое пространство имен, только одно с меньшим количеством нежелательной почты, которая обычно накапливается в типичном сеансе репликации.
Следует использовать с осторожностью: не вытаскивайте коврик из-под ног!
Ответ 2
В EMACS/slime REPLs C-c C-o очищает последний результат (если вы набрали то, что дало очень длинный ответ) C-c M-o очищает все это
В терминалах GNOME у вас есть опция меню Terminal/ Reset и Clear
Ответ 3
Если вы используете реплика через окно терминала (например: Terminal.app на MacOS или xterm/aterm/urxvt и т.д. в linux), вы можете ввести Control-L, и он должен очистить оконечное окно и дать вам новое приглашение на замену. Однако все макросы/атомы, которые вы ранее определили, все еще будут в памяти, так что это просто "косметический".
Ответ 4
Обрезка для очистки всего буфера: C - u C - C C - o
Ярлык для очистки последнего выхода: C - C C - o
Обратите внимание, что старый способ: C - C M - o
Ответ 5
Если вы используете Emacs + nREPL
, вы можете:
- Запустите M x
nrepl-clear-buffer
или - Запустить C C M o
Если привязка ключей не включена, запустите M x nrepl-interaction-mode
, чтобы включить ее. Вы можете найти другие полезные ярлыки в nrepl.el и/или настроить привязки клавиш в соответствии с вашими потребностями.
Примечание. Вы можете найти все привязки клавиш nREPL
в вашей системе, запустив M-x v
nrepl-mode-map
и следуя ссылке nrepl.el
.
Ответ 6
Я использую команду Emacs cider-repl-clear-buffer
через M-x. Можно также использовать cider-repl-clear-output
с аргументом префикса: C-u C-c C-o.
Ответ 7
Это зависит от того, что вы подразумеваете под "чистым". Чтобы удалить все пространства имен в пакете, вы можете использовать:
(mapv remove-ns
(map symbol
(filter #(.startsWith % "org.mycompany")
(map str (all-ns)))))