Плагин strings.spf [30/08/2014 14:08]

Обсуждение программ nnCron и nnCron LITE

Плагин strings.spf [30/08/2014 14:08]

Postby VoidVolker » Wed, 24 Oct 2012, 21:16

Вторая версия автострок была сброшена в забвение как не самая удачная. По сути — strings.spf и есть третья версия автострок. Код полностью переписан — поэтому и название новое, совершенно новый функционал, архитектура, поддержка юникода/перекодировки, куча новых опций, которые правда пока есть не все. Это можно сказать открытая бета-версия. В целом — работает, местами — еще не все есть.

Основные особенности:
— Строковые литералы хранятся в большом внешнем буфере вместо кодофайла и идентифицруются позицией в этом буфере, поэтому при сохранении в *.exe надо этот буфер перенести в кодофайл:
Code: Select all
STRINGS>HERE

Такой подход к хранению строк — отдельно от кода — сводит к минимуму вероятность изменения кода при некорректных операциях со строками и предоставляет больше места для кода. А так же позволяет создавать файловые литералы: при перечитывании кротабов крон загружает файл сразу в ОЗУ — как переменную. Что позволяет в критических ко времени скриптах обрабатывать файлы максимально быстро. Или, например, формировать большой отчет из множества статических данных из файлов.

— Отдельный буфер для сложения строк(10 Мегабайт), с автоматическим контролем размера, т.е. если строка не умещается в буфере — он автоматически увеличится, при этом можно задать максимальный размер буфера или в начале скрипта использовать более подходящий для задачи размер;
— Этот же буфер используется для хранения строк в режиме интерпретации (консоль, раздел задач до Action:), при достижении определенного процента заполнения буфера, он будет заполняться с начала(вероятность такого события крайне мала);
— Для выполнения какого-либо действия на определенном символе в строке используется таблица с исполнимыми токенами для каждого символа;
— Поддержка переменных окружения:
Code: Select all
" username is: %USERNAME%" TYPE CR

— Поддержка перехода в режим интерпретации в подстроке:
Code: Select all
: someword " sometext: %[ CUR-DATE DATE>S ]%" ;
Т.о. код будет выполнен, результат автоматически запишется в строку, а строка станет литералом.

— Автоматический контроль глубины стека:
Code: Select all
" Number: %12345%"  TYPE CR


И в качестве бонуса плагин-сборник всяких полезных слов extwords.spf — все внутри описано. Само собой надо сначала его подключить, а потом строки.

А вот и линки:
http://www.nncron.ru/download/plugins/vv/extwords.spf
http://www.nncron.ru/download/plugins/vv/strings.spf
http://www.nncron.ru/download/plugins/vv/lists.spf
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Опять власть меняется

Postby Morituruz » Wed, 24 Oct 2012, 22:24

Только-только привыкнешь, пообживёшься, понапишешь кучу индийского кода, и тут на тебе, новая версия :cry:
Бегло посмотрел, получается, мне теперь везде надо менять, к примеру |q на \q?
User avatar
Morituruz
 
Posts: 725
Joined: Sun, 14 Oct 2007, 01:51

Re: Плагин strings.spf [24/10/2012 21:37]

Postby VoidVolker » Thu, 25 Oct 2012, 07:15

Moriturus wrote:Только-только привыкнешь, пообживёшься, понапишешь кучу индийского кода, и тут на тебе, новая версия

Зато плюшек больше 8-)
Moriturus wrote:Бегло посмотрел, получается, мне теперь везде надо менять, к примеру |q на \q?

Да. Просто решил использовать общепринятые стандарты — удобнее. Тем более, что такая замена осуществляется в несколько кликов в любом редакторе. Но если очень хочется нестандартный символ — он легко меняется как в самом плагине так и на лету:
Code: Select all
...
CHAR \ CONSTANT ESC-CHAR
...

Code: Select all
<любой_символ> TO ESC-CHAR
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин strings.spf [24/10/2012 21:37]

Postby SeMa » Thu, 25 Oct 2012, 18:04

Супер! Спасибо!
при сохранении в exe надо этот буфер перенести в кодофайл

Можно поподробнее... :oops:
Компьютер ─ устройство, разработанное для ускорения и автоматизации человеческих ошибок
User avatar
SeMa
 
Posts: 637
Joined: Fri, 15 Apr 2005, 12:49
Location: Украина

Re: Плагин strings.spf [25/10/2012 22:01]

Postby VoidVolker » Thu, 25 Oct 2012, 21:04

Ап!
SeMa:
Code: Select all
STRINGS>HERE
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин strings.spf [25/10/2012 22:01]

Postby VoidVolker » Fri, 26 Oct 2012, 20:01

Есть какие-нибудь пожелания, предложения, критика?
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин strings.spf [27/10/2012 20:17]

Postby VoidVolker » Sat, 27 Oct 2012, 19:30

Ап! Добавлены слова r" +" +r" , авторесайз строкового буфера и еще некоторое количество разных изменений.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин strings.spf [27/10/2012 20:17]

Postby ask » Sun, 28 Oct 2012, 16:14

Осторожничаем... Читаем отзывы и ждём ещё одно-два исправления...
Как говорила Анка-пулемётчица, "Ближе подпустим".
ask
 
Posts: 56
Joined: Sun, 11 Dec 2011, 09:38

Re: Плагин strings.spf [27/10/2012 20:17]

Postby VoidVolker » Sun, 28 Oct 2012, 16:41

ask wrote:Осторожничаем... Читаем отзывы и ждём ещё одно-два исправления...
Как говорила Анка-пулемётчица, "Ближе подпустим".

Можно и не дождаться. Не факт, что отзывы вырастут как грибы. А чтобы что-то исправить, надо сначала найти, что исправлять =) Для этого и выложил: чтоб пользователи посмотрели и высказали свое мнение по поводу той или иной опции/процедуре/функции. Пока такая возможность есть. Потом — может и не оказаться.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин strings.spf [27/10/2012 20:17]

Postby ask » Sun, 28 Oct 2012, 16:54

Я правильно понимаю, что строка
Code: Select all
" %REG_ROOT COUNT%\%REG_KEY COUNT%" REG-KEY-EXIST?

теперь должна выглядеть так:
Code: Select all
" %REG_ROOT COUNT%\\%REG_KEY COUNT%" REG-KEY-EXIST?
?

А строка с числом
Code: Select all
" WithInternet_%INT_I @ N>S%"
какой должна стать?
ask
 
Posts: 56
Joined: Sun, 11 Dec 2011, 09:38

Re: Плагин strings.spf [27/10/2012 20:17]

Postby VoidVolker » Sun, 28 Oct 2012, 17:45

ask wrote:Я правильно понимаю, что строка
Code: Select all
" %REG_ROOT COUNT%\%REG_KEY COUNT%" REG-KEY-EXIST?

теперь должна выглядеть так:
Code: Select all
" %REG_ROOT COUNT%\\%REG_KEY COUNT%" REG-KEY-EXIST?
?

Можно и так, а можно вот так:
Code: Select all
r" %REG_ROOT COUNT%\%REG_KEY COUNT%" REG-KEY-EXIST?

ask wrote:А строка с числом
Code: Select all
" WithInternet_%INT_I @ N>S%"
какой должна стать?

Code: Select all
" WithInternet_%INT_I @ N>S%"

Code: Select all
" WithInternet_%INT_I @%"

Оба варианта корректны.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин strings.spf [27/10/2012 20:17]

Postby VoidVolker » Mon, 29 Oct 2012, 22:48

Ап! Исправлена логическая ошибка инициализации библиотеки и ошибочная компиляция лишнего слова, что приводило к исключению в некоторых случаях использования строк в режиме компиляции и задачах.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин strings.spf [27/10/2012 20:17]

Postby VoidVolker » Mon, 29 Oct 2012, 23:35

Ап! Корректировка логики сложения строк в режиме интерпретации.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Re: Плагин strings.spf [30/10/2012 00:31]

Postby SeMa » Tue, 30 Oct 2012, 14:01

Откуда взяты "скобочные" слова типа %[ ]% и другие, если они нигде не объявлены (я не нашёл)? По WORDS-LIKE их тоже не видно. Как посмотреть их определение?

Плюс к этому хочу добавить их в схему Colorer, т.к. у меня на них слетает раскраска текста. Мне надо определить пары слов-скобок "открывающая-закрывающая", например:
(ну, с этими ясно и в схеме они есть)
Code: Select all
S" "
" "
%[ ]%

А как быть с этими и т.п.?
Code: Select all
("
)"     \ (наверное, относится к предыдущему)
["
]..
Компьютер ─ устройство, разработанное для ускорения и автоматизации человеческих ошибок
User avatar
SeMa
 
Posts: 637
Joined: Fri, 15 Apr 2005, 12:49
Location: Украина

Re: Плагин strings.spf [30/10/2012 00:31]

Postby VoidVolker » Tue, 30 Oct 2012, 20:35

SeMa wrote:Откуда взяты "скобочные" слова типа %[ ]% и другие, если они нигде не объявлены (я не нашёл)? По WORDS-LIKE их тоже не видно. Как посмотреть их определение?

Напоминаю, что знаки процента в строке играют лишь роль тегов. Если их убрать — то что останется между ними? Код. Соответственно, никакие это не слова, просто квадратные скобки. А что такое квадратные скобки в форте? Это переключение режимов интерпретация/компиляция. Вот их определение:
Code: Select all
: [ STATE OFF ; IMMEDIATE
: ] STATE ON ;


SeMa wrote:А как быть с этими и т.п.?
Code: Select all
("
)"     \ (наверное, относится к предыдущему)
["
]..

Нет таких слов.
95% вопросов уже обсуждались на форуме или ответы на них есть в мануале.        nnCron 1.93 b15.exe
Как правильно задавать вопросы.
User avatar
VoidVolker
Site Admin
 
Posts: 2898
Joined: Tue, 25 Apr 2006, 17:56

Next

Return to nnCron forum (Russian)

Who is online

Users browsing this forum: No registered users and 3 guests