|
|
| version 1.52, 2002/06/24 19:11:43 | version 1.68, 2002/08/08 12:02:21 |
|---|---|
| Line 272 odbc c:\drives\y\parser3project\odbc\ | Line 272 odbc c:\drives\y\parser3project\odbc\ |
| <0 = не найдено | <0 = не найдено |
| !^строка.replace[$таблица_подстановок_строка_на_строку] | !^строка.replace[$таблица_подстановок_строка_на_строку] |
| !^строка.save[[append;]путь] | !^строка.save[[append;]путь] |
| !^строка.normalize[] выдает другую строку, в которой фрагменты на одном языке объединены | |
| полезно делать перед сложными match операциями, если вы знаете, что входная строка | |
| состоит из большого числа фрагментов | |
| !table | !table |
| в выражении | в выражении |
| логическое значение равно "не пуста?" | логическое значение равно "не пуста?" |
| числовое значение равно count[] | числовое значение равно count[] |
| !^table::create[[nameless]]{данные} старое имя "set" | !^table::create[[nameless]]{данные} старое имя "set" |
| !^table::create[table] | !^table::create[table][[$.limit(1) $.offset(5) $.offset[cur]]] |
| клонирует таблицу | клонирует таблицу |
| !^table::load[[nameless;]путь] | !^table::load[[nameless;]путь] |
| !если не nameless, названия колонок берутся из первой строки | !если не nameless, названия колонок берутся из первой строки |
| !пустые строки, и строки в первой колонке содержащие '#', игнорируются | !пустые строки, и строки в первой колонке содержащие '#', игнорируются |
| Line 300 odbc c:\drives\y\parser3project\odbc\ | Line 303 odbc c:\drives\y\parser3project\odbc\ |
| X^таблица.remove(position[;count]) - стирает запись | X^таблица.remove(position[;count]) - стирает запись |
| из текущей позиции [стирает запись из конкретной позиции] | из текущей позиции [стирает запись из конкретной позиции] |
| [стирает count записей] | [стирает count записей] |
| !^таблица.join[таблица] - добавляет записи из таблицы. | !^таблица.join[таблица][$.limit(1) $.offset(5) $.offset[cur]] - добавляет записи из таблицы. |
| таблицы должны иметь одинаковую структуру. | таблицы должны иметь одинаковую структуру. |
| !^таблица.flip[] выдаёт транспонированную, надо куда-то сложить, потом пользовать | !^таблица.flip[] выдаёт транспонированную, надо куда-то сложить, потом пользовать |
| !^таблица.locate[поле;значение] передвигает текущую строку, если найдёт. выдаёт bool | !^таблица.locate[поле;значение] передвигает текущую строку, если найдёт. выдаёт bool |
| Line 588 Xhashfile | Line 591 Xhashfile |
| возвращённый заголовок рассыпается на $поля | возвращённый заголовок рассыпается на $поля |
| $status | $status |
| $stderr | $stderr |
| !^file::exec[имя файла[;env hash[;1cmd[;2line[;3ar[;4g[;5s;...under win32 max 10 args]]]]]]] | !^file::exec[имя файла[;env hash $.stdin[текст][;1cmd[;2line[;3ar[;4g[;5s;...under win32 max 10 args]]]]]]] |
| !^file:move[старое имя файла;новое имя файла] | !^file:move[старое имя файла;новое имя файла] |
| можно переименовывать и двигать каталоги[win32: но не через границу дисков] | можно переименовывать и двигать каталоги[win32: но не через границу дисков] |
| каталоги для dest создаются с правами 775 | каталоги для dest создаются с правами 775 |
| Line 616 math | Line 619 math |
| !^math:pow sqrt | !^math:pow sqrt |
| !^math:random(ширина диапазона) | !^math:random(ширина диапазона) |
| ^math:GUID {C2C0983C-E26E-4169-BD07-77ECE9405BA5} | ^math:GUID {C2C0983C-E26E-4169-BD07-77ECE9405BA5} |
| !^math:crypt[password;$apr1$salt] | !^math:crypt[password;salt] |
| salt prefix $apr1$ вызывает встроенный MD5 алгоритм, | |
| если нет тела salt, оно создаётся случайным | |
| $1$ вызывает MD5 алгоритм функции OS 'crypt', если поддерживается [заведомо нет на solaris]. | |
| другие salt читайте документацию по функции OS 'crypt'. | |
| !date | !date |
| !время типа time можно использовать в выражениях, подставляет | !время типа time можно использовать в выражениях, подставляет |
| количество дней с epoch [1 января 1970 (UTC)], дробное | количество дней с epoch [1 января 1970 (UTC)], дробное |
| !всё происходит в localtime, | !всё происходит в localtime, |
| !временная зона задаётся вне parser средствами OS | !временная зона задаётся вне parser средствами OS |
| $date:UTC-offset сколько дней надо прибавить,чтобы попасть в local время | |
| $date:TZ наш часовой пояс, дробное, в часах (где-то есть с точностью до получаса) | |
| $date:isdst 1/0 действует ли сейчас летнее время | |
| !^date::now[] | !^date::now[] |
| !^date::now(смещение в днях) выдаёт сейчас+смещение | !^date::now(смещение в днях) выдаёт сейчас+смещение |
| !^date::create(дней с epoch) // старое имя set | !^date::create(дней с epoch) // старое имя set |
| Line 631 math | Line 641 math |
| для удобного создания по значению из базы | для удобного создания по значению из базы |
| формат1: %Y[-%m[-%d[ %H[:%M[:%S]]]]] | формат1: %Y[-%m[-%d[ %H[:%M[:%S]]]]] |
| формат2: %H:%M[:%S] | формат2: %H:%M[:%S] |
| !$date.year month day hour minute second weekday todo:yearday | !$date.year month day hour minute second weekday yearday(0...) daylightsaving |
| read-only | read-only |
| !^date.roll[year|month|day](+-смещение) сдвигает дату | !^date.roll[year|month|day](+-смещение) сдвигает дату |
| !^date.sql-string[] %Y-%m-%d %H:%M:%S | !^date.sql-string[] %Y-%m-%d %H:%M:%S |
| where published='$дата.sql-string[]' | where published='$дата.sql-string[]' |
| !^date:calendar[rus|eng;год;месяц] выдаёт неименованную таблицу | !^date:calendar[rus|eng;год;месяц] выдаёт неименованную таблицу |
| столбцы: 0..6 | столбцы: 0..6, week |
| !^date:calendar[rus|eng;год;месяц;день] выдаёт именнованную таблицу | !^date:calendar[rus|eng;год;месяц;день] выдаёт именнованную таблицу |
| столбцы: year, month, day, weekday | столбцы: year, month, day, weekday |
| Line 669 xdoc(xnode) | Line 679 xdoc(xnode) |
| !равно текущей кодировке выходной страницы, | !равно текущей кодировке выходной страницы, |
| $response:charset | $response:charset |
| ::sql{...} | ::sql{...} |
| !::create{<?xml?><string/>} старое имя 'set' | !::create[[URI]]{<?xml?><string/>} старое имя 'set' |
| !::create[qualifiedName] | !::create[[URI]][qualifiedName] |
| URI default = disk path to requested document | |
| для каталогов конечный / обязателен | |
| !::load[file.xml] | !::load[file.xml] |
| !.transform[rules.xsl][[params hash]] выдаёт dom | !.transform[rules.xsl|xdoc][[params hash]] выдаёт dom |
| шаблон кэшируется, кэш обновляется при изменении даты файла шаблона, | шаблон кэшируется, кэш обновляется при изменении даты файла шаблона, |
| или изменении даты файла "имя шаблона.stamp"[проверка даты stamp приоритетнее] | или изменении даты файла "имя шаблона.stamp"[проверка даты stamp приоритетнее] |
| <xsl:output | <xsl:output |
| Line 896 xdoc(xnode) | Line 908 xdoc(xnode) |
| !image.format ^image::measure[index.html] not gif/jpg | !image.format ^image::measure[index.html] not gif/jpg |
| !sql.connect ^connect[mysql://baduser:pass@host/db]{} not found/timeout | !sql.connect ^connect[mysql://baduser:pass@host/db]{} not found/timeout |
| !sql.execute ^void:sql{select bad} syntax error | !sql.execute ^void:sql{select bad} syntax error |
| sql.duplicate | |
| sql.access | |
| sql.missing | |
| sql.xxx [serge asked] | |
| !xml ^xdoc::create{<forgot?>} any error in xml/xslt libs | !xml ^xdoc::create{<forgot?>} any error in xml/xslt libs |
| !smtp.connect not found/timeout | !smtp.connect not found/timeout |
| !smtp.execute communication error | !smtp.execute communication error |
| !email.format hren tam@null.ru wrong email format(bad chars/empty) | |
| !email.send $MAIL.sendmail[/shit] sendmail not executable | |
| !нужно выключить русский apache: CharsetDisable on | !нужно выключить русский apache: CharsetDisable on |
| !если в MAIN будет определён флаг $ORIGINS(1) то вместо обычного вывода страницы будет | !если в MAIN будет определён флаг $ORIGINS(1) то вместо обычного вывода страницы будет |