View Issue Details

IDProjectCategoryView StatusLast Update
0003681WishesSpecial Symbolspublic2018-11-28 20:29
ReporterJohnDoeAssigned To 
PrioritynormalSeverityminorReproducibilityN/A
Status newResolutionopen 
Platformx86OSWindowsOS VersionXP SP3
Product Version3.0 
Target VersionFixed in Version 
Summary0003681: lua-скрипты в метасимволах
DescriptionПредлагаю реализовать возможность использования метасимволов, задаваемых lua-функциями.
Например так:
!*func

Здесь func - имя lua-функции, возвращающей строку подстановки.

Метасимвол может быть и другим, например можно попытаться минимизировать число закорючек: !lua!func

Функции, имена которых допустимы в качестве func, предлагаю загружать аналогично макросам/событиям, такой способ позволит впоследствии легко добавлять в определение дополнительные свойства.
Steps To ReproduceСледует учесть равную применяемость метасимволов в Ассоциациях (панельных, и командной строки), Меню Пользователя, и Применить Команду.

В описании приводится минимальный вариант пожелания.
Хотя он уже достаточно полезен сам по себе, впоследствии его можно существенно расширить, увеличив возможности и гибкость реакции в зависимости от контекста.
Обсуждение на форуме: https://forum.farmanager.com/viewtopic.php?p=151184#p151184

Additional InformationВозможные направления дальнейшего развития:
  1. Функция func могла бы принимать параметры, в числе которых можно передавать контекст вызова, текущий обрабатываемый элемент, и дополнительные аргументы, если присутствуют в конкретном вызове метасимвола
  2. Дополнительные аргументы:
    1. Можно было бы передавать примерно так: !*func(arg1,arg2) В этом случае перед парсером возникает задача выделение границ метасимвола, и могут понадобиться какие-то правила экранирования.
    2. Альтернативно, аргументами может считаться всё оставшееся содержимое командной строки.

  3. Функция помимо строки могла бы возвращать и другие значения, которые можно было бы использовать для отмены команды, и т.п.

Подробнее на форуме
TagsMetasymbols
Build

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2018-11-20 14:33 JohnDoe New Issue
2018-11-20 14:34 JohnDoe Description Updated View Revisions
2018-11-20 14:34 JohnDoe Steps to Reproduce Updated View Revisions
2018-11-20 14:34 JohnDoe Additional Information Updated View Revisions
2018-11-20 14:35 JohnDoe Additional Information Updated View Revisions
2018-11-20 14:38 JohnDoe Tag Attached: Metasymbols