стратегия за автоматично довършване на skeleton код

Помислете за този сценарий на използване: Искам да завърша автоматично и да осигуря скелета за кодови конструкции като for цикъл и оператори if else. Как мога да го направя?

потребителят пише този ред във VBScript,

функция add(a,b) и след това натиска enter, програмата трябва автоматично да добави реда end function след него.

Също така трябва да се справя със случая, в който има вложени изрази, както в случая с операторите if и endif.

Всяка помощ ще бъде високо оценена.

Благодаря


person redDragonzz    schedule 14.03.2011    source източник


Отговори (1)


Накратко: Прочетете реда след натискане на Enter, вземете ключовите думи с някои регулярни изрази, потърсете ключовите думи в речник и изпълнете свързаната функция (чрез използване на функционални указатели), която се добавя като елемент към този ключ.

Сега можете да създадете речник с ключови думи като ключове и имена на функции (като низ), които да изпълнявате с всяка ключова дума.

В отделен модул създайте колекция от функции, които са свързани с определени ключови думи, като генериране на текста VbNewLine & "End Function".

За да поддържате всичко изрядно, трябва да поставите регулярните изрази, ключовите думи и функциите, които да изпълнявате с тези ключови думи, в отделни обекти като речници или персонализирани класове. Не започвайте с Select Case, ако искате да отидете за разширяемост.

person AutomatedChaos    schedule 14.03.2011