Показано с 1 по 3 из 3

Тема: Усиленно тестируем UMC 2.0.xxxx

  1. #1
    Stanislav V. Mikov
    Stanislav V. Mikov вне форума
    Участник
    Регистрация
    07.02.2004
    Сообщений
    37

    Усиленно тестируем UMC 2.0.xxxx

    После глубокой и продолжительной шизофрении, буквально не приходя в сознание, вышло следующее поделие:


    http://stanislav.neva.pp.ru/umc-bin-2.0.1020.zip
    Пароль, как всегда, "umc" без кавычек.

    По хорошей традиции, убиты пара глюков, добавлены ещё штук 10.
    Но самая главная новость - добавлена бета-версия скриптинг-системы - то есть, вы можете сами писать свои макросы, вызывая из как полноценные макросы. Не ждите многого от беты, но самые простенькие макросы писать можно. Типа строчку порезать или задом наперёд пустить, или квадратное уравнение решить или биоритмы посчитать.
    Чем больше бета-тестеров, тем раньше глюки исчезнут

    Некоторая информация о скриптах в сабже.

    Скрипт - это описание макроса в текстовом виде. Скриптовый язык UMC -
    это подмножество языка Delphi Pascal, реализованное при помощи
    библиотеки JVCL.

    Файл описания скриптов UMC - это текстовый файл с расширением *.s

    Файл описания скриптов содержит один или более скриптов.
    Описание скрипта начинается с ключевого метасимвола @SCRIPT:
    @SCRIPT TEST
    Этот метасимвол описывает скрипт под названием TEST. Старайтесь не
    использовать дублирующихся имён скриптов, чтобы избежать
    недоразумений.
    После метасимвола @SCRIPT идёт сам скрипт. Скрипт является либо
    простым арифметическим выражением, либо описанием функции используя
    синтаксис языка Pascal без строки function:

    @SCRIPT TEST1
    //Первый скрипт
    'Hello Word! Time is '+datetimetostr(now);

    @SCRIPT TEST2
    //Второй скрипт
    var time:TDateTime;
    begin
    time:=now;
    Result:='Hello Word! Time is '+datetimetostr(time);
    end;

    Чтобы вызвать скрипт из шаблона, необходимо использовать специальный
    макрос %S(SCRIPTNAME):
    %S(TEST2)

    Файлы описаний скриптов находятся в директории /Scripts в папке, куда
    был установлен UMC.

    В данный момент можно использовать некоторые стандартные процедуры, функции и
    типы из модулей Delphi: System, SysUtils, Windows

    Чтобы использовать внутренние переменные UMC, необходимо обращаться к
    ним с префиксом umc_ :
    @SCRIPT TEST3
    'UMC version is '+umc_ver

    Вы можете использовать управляющие конструкции:
    @SCRIPT TEST4
    var i:integer;
    begin
    result:='';
    for i:=32 to 255 do
    result:=result+chr(i);
    end;
    @SCRIPT TEST5
    var i:integer;
    begin
    result:='';
    i:=32;
    while i<=255 do begin
    if (i<45)or(i>53) then
    result:=result+chr(i);
    i:=i+1;
    end;
    end;

    Ещё к вопросу о скриптах. Все скрипты импортируются в общий список
    макросов с префиксом FN. Так, например, скрипт с именем TEST будет
    доступен как макрос %FNTEST.
    Для доступа к параметрам макроса следует использовать функции
    ParamCount и ParamStr, смысл которых совпадает с аналогичными
    функциями паскаля.
    Вызывать макросы при помощи %S(MacroName,parameter1,parameter2,…)
    можно, но не рекомендуется.

    Во-отъ.....



  2. #2
    Spirer
    Spirer вне форума
    Новичок
    Регистрация
    14.11.2004
    Сообщений
    3

    Re:Усиленно тестируем UMC 2.0.xxxx

    10 новых глюков пока не нашел,
    а вот писать самомы макросы…, это Вы конечно сложновато будет… я только GW-BASIC могу и то со словарем

  3. #3
    Stanislav V. Mikov
    Stanislav V. Mikov вне форума
    Участник
    Регистрация
    07.02.2004
    Сообщений
    37

    Re:Усиленно тестируем UMC 2.0.xxxx

    Ну, эта фича - для профессионалов, а не для новичков. Для последних должно с лихвой хватить стандартных макросов ))

Похожие темы

  1. Сервер сообщает: XXXX@domain.ru internal loop in the Router
    от holovla в разделе Баги и ошибки
    Ответов: 0
    Последнее сообщение: 30.09.2014, 14:30
  2. Тестируем создание почтового ящика на thebat.net
    от Maxim Masiutin в разделе The Bat!: вопросы и ответы
    Ответов: 18
    Последнее сообщение: 10.11.2007, 17:01