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

Тема: Ынтересный макрос

  1. #1
    Ekho
    Ekho вне форума
    Новичок
    Регистрация
    08.06.2004
    Сообщений
    4

    Ынтересный макрос

    вобщем задался я тут идеей шаблончик для писем написать.
    суть такая: в подпись вставляется цитата из файла (строка из текстового файла). Часть из строк представлена в виде "текст^ещё_текст^и_ещё_текст…" где символ ^ означает переход на новую строку.
    вопрос встал как написать скрипт, который бы разбивал такой текст на строки и выводил.

    Пока я допетрил до следующего:
    Код:
    %_q='%COOKIE="C:\Program Files\The Bat!\plugins\phrases1.txt'
    %_tt=''
    %_qq='@'
    %While("qq","@#$","%%_tt='%%UMCCUTFROMTO(""%%_q"","""",""^"")'%%_q='%%UMCCUTFROMTO(""%%_q"",""%%_tt^"","""")'
    %%_tt%%IF:'%%_q'='%%_tt':'%%_qq=""@#$""':'%%-'")
    Алгоритм такой: пока отрезаемый от начала строки до ^ кусок (%_tt) не станет равен этой самой строке (%_q), а это возможно только когда в строке больше нет знаков ^, этот самый отрезаемый кусок выводится.
    И вроде бы даже это работает, но почему-то выводит лишь последнюю строку из разбитого на строки текста.
    Может можно как-то иначе разбивать? Я уже голову сломал.

  2. #2
    aquatiCat
    aquatiCat вне форума
    Участник Аватар для aquatiCat
    Регистрация
    02.09.2003
    Сообщений
    390

    Re:Ынтересный макрос

    А использовать \n совсем нельзя?

  3. #3
    Vadim
    Vadim вне форума
    Участник Аватар для Vadim
    Регистрация
    01.11.2002
    Сообщений
    4,711

    Re:Ынтересный макрос

    Цитата Сообщение от кОт
    А использовать \n совсем нельзя?
    Смеялся долго :-)
    А человек целую машину изобретает :-)
    Спасибо кОт :-)

  4. #4
    Los
    Los вне форума
    Новичок
    Регистрация
    01.07.2004
    Сообщений
    1

    Re:Ынтересный макрос

    На самом деле одного \n мало. Хочется еще чтобы получившиеся абзацы выравнивались по ширине. Поэтому вот тебе пример работающей машины, что у меня стоит:
    Код:
    ==== Система автоматической раздачи плюшек v1.0 (с) Los:
    %_S='%COOKIE="C:\Los\cookies.txt"'%-
    %SETPATTREGEXP="([^\n]*)(?:\n([^\n]*))*"%-
    %REGEXPBLINDMATCH='%_S'%-
    %IF:'%SUBPATT="1"'<>'':#%WRAPPED='%SUBPATT="1"'
    #:''%-
    %IF:'%SUBPATT="2"'<>'':#%WRAPPED='%SUBPATT="2"'
    #:''%-
    %IF:'%SUBPATT="3"'<>'':#%WRAPPED='%SUBPATT="3"'
    #:''%-
    %IF:'%SUBPATT="4"'<>'':#%WRAPPED='%SUBPATT="4"'
    #:''%-
    %IF:'%SUBPATT="5"'<>'':#%WRAPPED='%SUBPATT="4"'
    #:''%-
    %IF:'%SUBPATT="6"'<>'':#%WRAPPED='%SUBPATT="4"'
    #:''%-
    %IF:'%SUBPATT="7"'<>'':#%WRAPPED='%SUBPATT="4"'
    #:''%-
    %IF:'%SUBPATT="8"'<>'':#%WRAPPED='%SUBPATT="4"'
    #:''%-
    %IF:'%SUBPATT="9"'<>'':#%WRAPPED='%SUBPATT="5"'
    #:''
    Принцип работы простой - разбиваем строку по \n, форматируем по правилам бата, выводим. И так 9 раз Вот пример вывода:
    Код:
    ==== Система автоматической раздачи плюшек v1.0 (с) Los:
    "… Возвращается к первоначальной логике загрузки в лоб для
    неиндексированных полей…"
    Из неопубликованного.
    Первый перевод строки делает WRAPPED, второй забит жестко, как \n.

Похожие темы

  1. Макрос для адресной книги
    от workman в разделе The Bat!: вопросы и ответы
    Ответов: 8
    Последнее сообщение: 15.07.2012, 09:54
  2. Кнопка Макрос обрезана
    от DimON в разделе Баги и ошибки
    Ответов: 1
    Последнее сообщение: 23.01.2006, 21:03
  3. Макрос с PGP
    от Tomukas в разделе The Bat!: вопросы и ответы
    Ответов: 2
    Последнее сообщение: 09.11.2004, 09:20
  4. Макрос %OFromFName или…
    от Dmitry N в разделе The Bat!: вопросы и ответы
    Ответов: 1
    Последнее сообщение: 17.08.2004, 20:19
  5. Макрос %ATTACHMENTS
    от Giorgievich в разделе The Bat!: вопросы и ответы
    Ответов: 1
    Последнее сообщение: 05.03.2004, 14:47