2016-10-10 4 views
0

Я использую emacs для разработки clojure.Завершение программы в точке отладки?

Итак, после использования: C-u M-x cider-jack-in (в моем тестовом файле). Далее следуют lein repl, за которым следует M-x cider-connect Я получаю странный, частично работающий реплика в корне моего проекта, где я должен предоставить полный путь каждой функции в комплекте с ее пространством имен.

Как я могу предоставить сигу пользовательскую точку входа (например, тестовый файл)? Как я могу предварительно загрузить части пространства имен или остановить выполнение в определенной точке программы?

ответ

1

Вы можете изменить свое пространство имен имен, введя (in-ns 'some.namespace) в repl. Или иначе сидр позволяет вам переключиться на пространство имен открытого файла: откройте файл в emacs и выполните cider-repl-set-ns (или C-c M-n).

Чтобы загрузить весь файл в использовании Repl cider-load-buffer (Cc Ck), или cider-load-file (Cc Cl), а также для загрузки одноразового использования s-выражение cider-eval-last-sexp (поместив курсор после Sexp вы хотите EXEC и Cx Ce) или cider-eval-sexp-at-point.

+0

Это не дает ответ на вопрос, который, как представляется, будет о контрольных точках. –

+0

Мне кажется, что это вопрос о области repl и namespaces. – leetwinski

2

Предварительное заполнение пространств имен может быть выполнено с помощью C-c C-k в пространстве имен.

Вы можете разместить точку отладки с помощью C-u C-M-x. Когда вы запускаете код и нажимаете точку останова, вы можете следить за привязками клавиш, которые отображаются для ввода или вывода строк и т. Д. Вы можете использовать C-c C-c для удаления точки останова.

См. https://github.com/clojure-emacs/cider/blob/master/doc/debugging.md для получения дополнительной информации об отладке.

Пример из выше ссылки: An image of debugging commands