Обсуждение программ nnCron и nnCron LITE
by 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.spfhttp://www.nncron.ru/download/plugins/vv/strings.spfhttp://www.nncron.ru/download/plugins/vv/lists.spf
-

VoidVolker
- Site Admin
-
- Posts: 2907
- Joined: Tue, 25 Apr 2006, 17:56
by Morituruz » Wed, 24 Oct 2012, 22:24
Только-только привыкнешь, пообживёшься, понапишешь кучу индийского кода, и тут на тебе, новая версия Бегло посмотрел, получается, мне теперь везде надо менять, к примеру |q на \q?
-

Morituruz
-
- Posts: 728
- Joined: Sun, 14 Oct 2007, 01:51
by VoidVolker » Thu, 25 Oct 2012, 07:15
Moriturus wrote:Только-только привыкнешь, пообживёшься, понапишешь кучу индийского кода, и тут на тебе, новая версия
Зато плюшек больше  Moriturus wrote:Бегло посмотрел, получается, мне теперь везде надо менять, к примеру |q на \q?
Да. Просто решил использовать общепринятые стандарты — удобнее. Тем более, что такая замена осуществляется в несколько кликов в любом редакторе. Но если очень хочется нестандартный символ — он легко меняется как в самом плагине так и на лету: - Code: Select all
... CHAR \ CONSTANT ESC-CHAR ...
- Code: Select all
<любой_символ> TO ESC-CHAR
-

VoidVolker
- Site Admin
-
- Posts: 2907
- Joined: Tue, 25 Apr 2006, 17:56
by SeMa » Thu, 25 Oct 2012, 18:04
Супер! Спасибо! при сохранении в exe надо этот буфер перенести в кодофайл
Можно поподробнее... 
Компьютер ─ устройство, разработанное для ускорения и автоматизации человеческих ошибок
-

SeMa
-
- Posts: 637
- Joined: Fri, 15 Apr 2005, 12:49
- Location: Украина
by VoidVolker » Fri, 26 Oct 2012, 20:01
Есть какие-нибудь пожелания, предложения, критика?
-

VoidVolker
- Site Admin
-
- Posts: 2907
- Joined: Tue, 25 Apr 2006, 17:56
by VoidVolker » Sat, 27 Oct 2012, 19:30
Ап! Добавлены слова r" +" +r" , авторесайз строкового буфера и еще некоторое количество разных изменений.
-

VoidVolker
- Site Admin
-
- Posts: 2907
- Joined: Tue, 25 Apr 2006, 17:56
by ask » Sun, 28 Oct 2012, 16:14
Осторожничаем... Читаем отзывы и ждём ещё одно-два исправления... Как говорила Анка-пулемётчица, "Ближе подпустим".
-
ask
-
- Posts: 56
- Joined: Sun, 11 Dec 2011, 09:38
by VoidVolker » Sun, 28 Oct 2012, 16:41
ask wrote:Осторожничаем... Читаем отзывы и ждём ещё одно-два исправления... Как говорила Анка-пулемётчица, "Ближе подпустим".
Можно и не дождаться. Не факт, что отзывы вырастут как грибы. А чтобы что-то исправить, надо сначала найти, что исправлять =) Для этого и выложил: чтоб пользователи посмотрели и высказали свое мнение по поводу той или иной опции/процедуре/функции. Пока такая возможность есть. Потом — может и не оказаться.
-

VoidVolker
- Site Admin
-
- Posts: 2907
- Joined: Tue, 25 Apr 2006, 17:56
by 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
by 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 @%"
Оба варианта корректны.
-

VoidVolker
- Site Admin
-
- Posts: 2907
- Joined: Tue, 25 Apr 2006, 17:56
by VoidVolker » Mon, 29 Oct 2012, 22:48
Ап! Исправлена логическая ошибка инициализации библиотеки и ошибочная компиляция лишнего слова, что приводило к исключению в некоторых случаях использования строк в режиме компиляции и задачах.
-

VoidVolker
- Site Admin
-
- Posts: 2907
- Joined: Tue, 25 Apr 2006, 17:56
by VoidVolker » Mon, 29 Oct 2012, 23:35
Ап! Корректировка логики сложения строк в режиме интерпретации.
-

VoidVolker
- Site Admin
-
- Posts: 2907
- Joined: Tue, 25 Apr 2006, 17:56
by SeMa » Tue, 30 Oct 2012, 14:01
Откуда взяты "скобочные" слова типа %[ ]% и другие, если они нигде не объявлены (я не нашёл)? По WORDS-LIKE их тоже не видно. Как посмотреть их определение? Плюс к этому хочу добавить их в схему Colorer, т.к. у меня на них слетает раскраска текста. Мне надо определить пары слов-скобок "открывающая-закрывающая", например: (ну, с этими ясно и в схеме они есть) - Code: Select all
S" " " " %[ ]%
А как быть с этими и т.п.? - Code: Select all
(" )" \ (наверное, относится к предыдущему) [" ]..
Компьютер ─ устройство, разработанное для ускорения и автоматизации человеческих ошибок
-

SeMa
-
- Posts: 637
- Joined: Fri, 15 Apr 2005, 12:49
- Location: Украина
by VoidVolker » Tue, 30 Oct 2012, 20:35
SeMa wrote:Откуда взяты "скобочные" слова типа %[ ]% и другие, если они нигде не объявлены (я не нашёл)? По WORDS-LIKE их тоже не видно. Как посмотреть их определение?
Напоминаю, что знаки процента в строке играют лишь роль тегов. Если их убрать — то что останется между ними? Код. Соответственно, никакие это не слова, просто квадратные скобки. А что такое квадратные скобки в форте? Это переключение режимов интерпретация/компиляция. Вот их определение: - Code: Select all
: [ STATE OFF ; IMMEDIATE : ] STATE ON ;
SeMa wrote:А как быть с этими и т.п.? - Code: Select all
(" )" \ (наверное, относится к предыдущему) [" ]..
Нет таких слов.
-

VoidVolker
- Site Admin
-
- Posts: 2907
- Joined: Tue, 25 Apr 2006, 17:56
Return to nnCron forum (Russian)
Who is online
Users browsing this forum: No registered users and 2 guests
|
|