Находясь в Edebug, вы можете вычислять выражения так, как если бы Edebug не работал. Edebug старается быть незаметным для вычисления и вывода выражения. Вычисление выражений, вызывающих побочные эффекты, будет работать ожидаемым образом, за исключением изменений данных, которые Edebug явно сохраняет и восстанавливает. Подробности этого процесса см. в Внешний контекст.
Вычислить выражение exp в контексте вне Edebug (edebug-eval-expression). То есть Edebug старается минимизировать свое вмешательство в вычисление. Результат отображается в области эхо, или, если этой команде задать префикс, открывается новый буфер и результат красиво выводится в нем.
По умолчанию эта команда подавляет отладчик во время вычисления, чтобы ошибка в вычисленном выражении не добавляла новую ошибку поверх существующей. Установите опцию пользователя debug-allow-recursive-debug в значение, отличное от nil, чтобы переопределить это.
Вычислить выражение exp в контексте самого Edebug (eval-expression).
Вычислить выражение перед точкой в контексте вне Edebug (edebug-eval-last-sexp). При аргументе префикса ноль (C-u 0 C-x C-e) не сокращать длинные элементы (такие как строки и списки). Любой другой префикс приведет к тому, что значение будет красиво выведено в отдельном буфере.
Edebug поддерживает вычисление выражений, содержащих ссылки на лексически связанные символы, созданные следующими конструкциями в cl.el: lexical-let, macrolet и symbol-macrolet.