View Issue Details

IDProjectCategoryView StatusLast Update
0000164WishesMacropublic2013-02-03 00:34
Reportervskirdin Assigned Tovskirdin  
PrioritynormalSeverityfeatureReproducibilityalways
Status closedResolutionfixed 
Fixed in Version2.0 
Summary0000164: Возможность написания глобальных функций и не только
DescriptionFrom: Vladimir Evlanov

Значит вообще на самом деле мне давно ещё хотелось возможности вызова в макросе другого макроса. Дело в том, что разрабатывая мною система управления насчитывает несколько позиций. И я бы на самом деле хотел всё сделать в одной позиции, а в остальных позициях просто заремапить сочетания.

Можно было бы ввести специальный синтаксис указывающий, что по данному введённому сочетанию должен выполнится макрос на него. Например, Left в макросе означает оригинальную функциональность этой клавиши, а #Left# макрос на неё написанный в текущей области.

Есть просто сложные макросы, и среди них те, которые в будущем нужно будет обновлять. Так что для меня это реальная проблема. Дублирование как известно - зло по большей части.

Как на счёт возможности выполнения содержимого переменной как макроса?

Кстати, это бы автоматом получились глобальные функции. Текст их можно было бы хранить в глобальных переменных. А инициализировать понятно как, но там ещё виш писали в котором просили более логичную инициализацию (без назначения макроса на сочетание клавиш).

Исполнялся бы такой макрос, например, как $Exec %k.

Реально даже в одном макросе можно было бы написать сперва подпрограммы, а потом их исполнять. Разве что результат работы не получить подобных подпрограмм, то есть локальные переменные между подпрограммами не были бы расшаренными (но можно использовать ведь для этого глобальные переменные, можно специальные - достаточно несколько штук, после вызова подпрограммы всё перегонять в локальные переменные).

Области применения таких штук, блин, огромны.

Например, можно было бы написать пару функций. Одна из них бы сохраняла бы состояние командной строки (включая позицию курсора и выделение), а другая восстанавливала.

Кстати, можно понятное дело будет составлять в макросе макрос :-). Так вот там будет очень полезна такая штука как $Text. То есть вот строим мы новый макрос и нам нужно чтобы переменная текущего макроса была там воспринята как текст, а не последовательность клавиш (там "F1 Left").
TagsNo tags attached.
Build0

Activities

vskirdin

2008-10-24 09:00

administrator   bugnote:0001893

eval() есть

Issue History

Date Modified Username Field Change
2006-05-05 02:47 vskirdin New Issue
2006-05-05 02:47 vskirdin Status new => assigned
2006-05-05 02:47 vskirdin Assigned To => vskirdin
2008-10-24 09:00 vskirdin Note Added: 0001893
2008-10-24 09:00 vskirdin Status assigned => feedback
2009-03-29 16:58 alexy Build => 0
2009-03-29 16:58 alexy Status feedback => closed
2009-03-29 16:58 alexy Resolution open => fixed
2009-03-29 16:58 alexy Fixed in Version => 2.0
2013-02-03 00:34 alexy Severity minor => feature