Skip to content

Latest commit

 

History

History
41 lines (33 loc) · 3.35 KB

UTILS.md

File metadata and controls

41 lines (33 loc) · 3.35 KB

todo eval link

  • browse.lua предназначен для интерактивного просмотра lua-значений, в частности таблиц. Использует lua explorer.

    • Если же модуль "le" отсутствует в системе, то выводится значение, обработанное утилитой dump, см. ниже.
    • Вместо "le" можно использовать любую аналогичную утилиту, для этого проще всего создать в utils\overrides свой browse.lua, который будет возвращать соответствующую функцию.
  • dump.lua предназначен для преобразования lua-значений (особенно таблиц) в читаемую форму, например для последующего вывода на экран командой print. Использует inspect.lua, плюс функция, защищающая от "некорректного" utf-8, и превращающая бинарные гуиды в читаемую форму.

    • Если модуль "inspect" отсутствует, то вместо него используется штатная функция require"moon".dump
    • Вместо "inspect" можно использовать любую утилиту, создав в utils\overrides свой dump.lua, который будет возвращать соответствующую функцию.
  • moondump.moon имеет то же назначение что и dump.lua, но выдаёт компактный результат в одну строку, что может быть удобно например для отладки. Источник: wiki MoonScript

browse.lua и dump.lua могут быть использованы в качестве утилит, например таким образом:

browse far
dump panel.GetPanelInfo nil,1
  • showRet.lua позволяет отобразить таблицу-массив, и интерактивно просмотреть значения (через browse.lua). Используется внутри во всех случаях когда надо отобразить возвращаемые значения (как самостоятельная утилита для этого лучше подходит eval\ret.lua).

  • Toast.lua помимо общего использования (описанного в его справке), исполняется каждый раз когда, когда запущенный из командной строки скрипт возвращает значения, и позволяет (своевременным нажатием Enter), просмотреть их.

  • Все утилиты (включая те что выше не описаны) имеют собственную справку, которую можно увидеть запустив утилиту вхолостую (без параметров).