Я работал с некоторым кодом движка экспорта org, который передает несколько довольно больших и сложных объектов списка. Довольно утомительно исследовать объект, читая длинное завернутое в слово печатное представление объекта или итеративно записывая и оценивая средства доступа в чистом буфере. Мне интересно, есть ли хорошие методы интерактивного изучения ценностей.
Возьмем, к примеру: многие IDE, которые представляют значения объектов в интерактивном древовидном представлении, которое позволяет постепенно увеличивать ключи / значения. Объект постоянно отображается на экране и может быть исследован без особой заботы о просматриваемых типах значений. Случайный скриншот инструментов разработчика Chrome в качестве иллюстрации:
Другие инструменты представляют значения как всплывающие подсказки (функционально очень похожи). Случайный скриншот из Visual Studio:
Есть ли что-нибудь похожее на emacs lisp? Возможно, что-то встроено в edebug или предоставлено другим пакетом? Или это только ждет развития?
Примечание: я обнаружил pp и pp + вскоре после публикации этого вопроса. Форматирование невероятно полезно при визуальной навигации по структуре объектов. Это экономит необходимость изменять print-length
и print-depth
экстремальные значения и форматирование вывода в отдельном буфере.
hide-show.el
поможет в этом отношении.pp
иpp+
делать то , что вы хотите, то вы можете добавить , что в качестве собственного решения и пометить его как ответ в течение нескольких дней.Ответы:
Я обнаружил, что функция
pp-eval-last-sexp-with-tooltip
вpp+
пакете является отличным универсальным решением для этого. Фактически это то же самое, что иeval-last-sexp
, но аккуратно форматирует возвращаемое значение и отображает его как подсказку. Значения большеpp-max-tooltip-size
(x-max-tooltip-size
) отображаются в отдельном окне.Я связан с этим
C-x C-e
в данный момент:источник