Глава 2 - Подготовка
REBOL/Core руководство пользователя Основное содержание Send Us Feedback
Содержание:
1. Установка REBOL
1.1 Файлы дистрибутива
1.2 Переменная домашнего окружения
1.3 Настройка сети
1.4 Настройки прокси и брандмауэра
1.5 Лицензионное соглашение
2. Запуск REBOL
2.1 из значка
2.2 из оболочки
2.3 из другого приложения
2.4 Проблемы безопасности
2.5 Аргументы программы
2.6 Файл сценария (скрипты)
2.7 Указание параметров
2.8 Перенаправление файлов
2.9 Аргументы сценария
2.10 Файлы запуска
3. Выход из REBOL
4. Использование консоли
4.1 Многострочный ввод
4.2 Прерывание сценария
4.3 Вызов истории
4.4 Завершение слова
4.5 Индикатор занятости
4.6 Сетевые подключения
4.7 Виртуальный терминал
5. Получение справки
5.1 Интерактивная справка
5.2 Просмотр исходного кода
5.3 Загрузка документов
5.4 Библиотека сценариев
5.5 Список рассылки пользователей
5.6 Связь с нами
6. Ошибки
6.1 Сообщения об ошибках
6.2 Перенаправление ошибок
7. Обновление
1. Установка REBOL
Установка REBOL занимает всего несколько секунд и очень проста, незаметна и не мешает работе.
Для REBOL/Core единственная процедура установки - это распаковать файлы дистрибутива и сохранить их в любом каталоге вашей системы.
Для других продуктов REBOL при установке может потребоваться предоставить дополнительную информацию, например, где хранить связанные файлы. См. Примечания к выпуску, включенные в файлы распространения.
1.1 Файлы дистрибутива
Дистрибутив REBOL/Core включает следующие файлы:
| | rebol (.exe) | Исполняемая программа, запускающая консоль REBOL.
|
| | rebol.r | Файл начальной загрузки системы. (Не требуется для запуска REBOL.)
|
| | setup.html | Информация о настройке и установке.
|
| | changes.html | Изменения в последних выпусках.
|
| | license.txt | лицензионное соглашение REBOL.
|
Другие файлы могут быть предоставлены в зависимости от продукта и версии REBOL.
1.2 Переменная домашнего окружения
Хотя это не обязательно, но если ваша операционная система устанавливает переменную среды HOME, REBOL будет использовать ее для поиска файлов запуска. Во многих операционных системах, таких как UNIX или Linux, переменная HOME уже может быть установлена по умолчанию. (Так что самому ставить не нужно).
1.3 Настройка сети
При первом запуске REBOL запрашивает информацию о сети. Эта информация не является обязательной. Для некоторых протоколов, например электронной почты или FTP, требуется адрес электронной почты или имя почтового сервера. Кроме того, если вы находитесь за брандмауэром или используете прокси-сервер, вам необходимо предоставить конкретную информацию для доступа в Интернет.
Чтобы настроить вашу сеть:
- Введите свой адрес электронной почты. Например, name@example.com.
- Введите имя вашего почтового сервера. Например: mail.example.com. Используйте имя почтового сервера, который вы обычно используете. Если вы не уверены в имени сервера, обратитесь к своему сетевому администратору или поставщику услуг Интернета, чтобы узнать имя вашего SMTP-сервера (электронной почты).
- Укажите, используете ли вы прокси-сервер. Если вы напрямую подключены к Интернету через модем или Ethernet, введите N (нет). Если вы используете прокси или брандмауэр, предоставьте необходимую информацию, как описано в разделе «Параметры прокси и брандмауэра» ниже.
После ответа на вопросы запуска REBOL создает файл
user.r и помещает в него ваши сетевые настройки. Вы можете изменить эти настройки в любое время, отредактировав этот файл.
1.4 Настройки прокси и брандмауэра
Часто организации используют брандмауэр или прокси-сервер для защиты доступа в Интернет и из него. Прежде чем REBOL сможет получить доступ к Интернету через эти системы, вам необходимо предоставить некоторую дополнительную информацию.
Чтобы предоставить информацию о прокси-сервере:
- Когда REBOL спросит, используете ли вы прокси-сервер, ответьте утвердительно, набрав Y (да).
- Введите имя вашего прокси-хоста. Это компьютер или брандмауэр в вашей сети, выступающий в качестве прокси.
- Введите номер порта, используемый прокси-хостом для запросов прокси. Обычно это порт 1080, но он может отличаться. Если вы не знаете номер порта, проверьте настройки своего веб-браузера или обратитесь к администратору сети.
REBOL по умолчанию использует прокси-протокол SOCKS. Вы можете указать другой тип прокси, отредактировав файл user.r предоставив функции set-net соответствующий типу используемого прокси. Поддерживаются следующие настройки:
socks - использовать последнюю версию SOCKS (5)
socks5 - использовать socks5 прокси
socks4 - использовать socks4 прокси
generic - использовать общий прокси CERN
none - не использовать прокси
Эти настройки предоставляются как шестой аргумент функцииset-net содержащийся в файле user.r. Дополнительные сведения об изменении параметров прокси в файле user.r смотрите в главе «Сетевые протоколы» .
1.5 Лицензионное соглашение
Лицензионное соглашение с конечным пользователем REBOL, с которым вы согласились при загрузке или установке REBOL, можно просмотреть в любое время с консоли REBOL, введя license в командной строке REBOL.
2. Запуск REBOL
REBOL работает на большом количестве систем. REBOL запускается так же, как и другие приложения в вашей системе. В зависимости от конкретной операционной системы REBOL может быть запущен из одного или нескольких из следующих приложений: значка, командной оболочки или других приложений.
2.1 Из иконки
REBOL можно запустить, дважды щелкнув значок программы REBOL, или по ассациированому файлу сценария с расширением
.r.
Если вы дважды щелкните значок программы, REBOL загрузится, отобразит консоль и отобразит приглашение.
Если вы хотите запустить REBOL со скриптом, вы можете сделать это следующими способами:
- Перетащите скрипт на значок программы
- Ассоциируйте файл со программой REBOL
- Создайте ярлык или псевдоним или ссылку с информацией о программе и сценарии.
См. Дополнительную информацию в руководстве по вашей операционной системе.
2.2 Из командной строки
Из командной строки оболочки перейдите в каталог, содержащий файл
rebol.exe (или rebol на не-Windows системах), и введите rebol или ./rebol.
В некоторых операционных системах, таких как UNIX, вы можете создавать команды оболочки псевдонимы, которые могут запускать REBOL с набором аргументов и файлов. Кроме того, UNIX позволяет создавать сценарии оболочки, включающие путь и файл интерпретатора, например:
!#/path/to/rebol
в первой строке файла сценария. Когда вы вводите имя файла сценария в командной строке, UNIX запускает REBOL для выполнения сценария.
2.3 Из другого приложения
Для написания и отладки сценариев REBOL удобно настроить ваш любимый текстовый редактор для запуска REBOL и передать ему файл сценария, который вы редактируете. Каждый текстовый редактор делает это по-своему.
Например, в редакторе Premia Codewright вы можете использовать параметры компилятора языка для настройки REBOL. Укажите программу REBOL, а не компилятор. Затем вы можете нажать одну клавишу, которая сохраняет сценарий и оценивает его.
2.4 Проблемы безопасности
По умолчанию установлена защита, предотвращающая изменение сценариями любых ваших файлов или каталогов.
2.4.1 Безопасность порта
Функция secure (защита/безопасность) обеспечивает гибкость в настройке и управлении функциями безопасности REBOL. Текущие настройки безопасности возвращаются в результате вызова функции secure.
В настройках безопасности используется диалект REBOL, то есть язык внутри языка. Нормальный диалект состоит из блока парных значений. Первое значение в паре определяет, что "защищается":
| | file | определяет файловую безопасность.
|
| | net | определяет сетевую безопасность.
|
Имя файла или путь к каталогу позволяет указать уровни безопасности для конкретного файла или каталога.
Второе значение в паре определяет уровень безопасности. Это может быть слово "уровня безопасности" или "блок" слов. Слова уровня безопасности:
| | allow | разрешить доступ без ограничений.
|
| | ask | спросить разрешения, если потребуется какой-либо доступ.
|
| | throw | выдать ошибку, если потребуется какой-либо ограниченный доступ.
|
| | quit | закройть этот сеанс REBOL, если потребуется какой-либо ограниченный доступ.
|
Например, чтобы разрешить весь доступ к сети, но закрыть доступ к любому файлу:
secure [
net allow ;разрешить любой сетевой доступ
file quit ;любая попытка доступа к файлам завершит REBOL
]
Если вместо слова уровня безопасности используется блок, он может содержать пары уровней безопасности и типов доступа. Это позволяет указать более высокий уровень детализации требуемой безопасности. Разрешённые типы доступа:
| | read | контролирует доступ для чтения.
|
| | write | контролирует доступ на запись, удаление и переименование.
|
| | all | контролирует весь доступ.
|
Пары обрабатываются в том порядке, в котором они появляются, при этом более поздние пары изменяют эффект более ранних пар. Это позволяет установить один тип доступа без явной настройки всех остальных. Например:
secure [
net allow
file [
ask all
allow read
]
]
Вышеуказанное устанавливает уровень безопасности, чтобы запрашивать(ask ) все (all) операции, кроме чтения, которое должно быть разрешено. Этот метод также можно использовать для отдельных файлов и каталогов. Например:
secure [
net allow
file quit
%source/ [ask read]
]
спрашивает, если сделана попытка прочитать каталог %source . В ином случае, он использует по умолчанию (quit).
Есть особый случай, когда функция secure принимает аргумент из одного слова, который должен быть одним из уровней доступа безопасности. В этом случае уровень безопасности для всей сети и доступа к файлам устанавливается на этот уровень.
secure quit
Функция secure также может принять значение none, что сделает доступ без каких - либо ограничений (так же, как allow).
secure none
Уровень безопасности теперь следующий:
secure [
net allow
file [
ask all
allow read
]
]
Если уровень безопасности не устанавливался, то "по умолчанию", в случаи необходимости выдаётся запрос ask. Текущие настройки безопасности не будут изменены, если при обработке блока аргументов произошла ошибка.
2.4.2 Предыдущие настройки безопасности
Функция secure теперь возвращает предыдущие настройки безопасности до того, как были сделаны новые настройки. Это блок с настройками глобальной сети и файла, за которыми следуют настройки файла или каталога. Слово query может быть использовано для получения настроек без изменения их.
current-security: secure query
Вы можете сохранить текущий уровень безопасности, запросив текущие настройки, изменив их, а затем использовать функцию secure для установки новых значений.
Понижение уровня безопасности вызывает запрос на изменение настроек безопасности. Исключение составляют случаи, когда сеанс REBOL работает в тихом режиме, который вместо этого завершает сеанс REBOL. При повышении уровня безопасности запрос не создается. Обратите внимание, что запрос безопасности теперь включает возможность разрешить весь доступ для оставшейся части обработки скриптов.
Запуск REBOL из оболочки аргумент -s эквивалентен:
secure allow
а аргумент +s эквивалентен:
secure quit
Теперь вы можете следовать аргументу --secure с одним из уровней безопасности доступа как для сети, так и для доступа к файлам:
rebol --secure throw
2.5 Аргументы программы
Существует ряд аргументов, которые можно указать в командной строке оболочки, в пакетном сценарии или в свойствах значка. Чтобы просмотреть аргументы и параметры, доступные для любой версии языка REBOL, введите usage в командной строке консоли.
Использование командной строки:
REBOL <параметры> <сценарий> <аргументы>
Все поля являются необязательными. Поддерживаемые параметры:
--cgi (-c) Проверить ввод CGI
--do expr Выполнить выражение
--help (-?) Показать эту информацию об использовании
--nowindow (-w) Не открывать окно
--noinstall (-i) Не устанавливать (View)
--quiet (-q) Не печатать баннеры
--reinstall (+i) Принудительно устанавливать (View)
--script file Явно указывать сценарий
--secure level Установить уровень безопасности:
(allow ask throw quit)
--trace (-t) Включить режим трассировки
--uninstall (-u) Деинсталировать/удалить REBOL (View)
Другие параметры командной строки:
+q Принудительно выключить quiet (-q) (View)
-s Нет контроля безопасности
+s Максимальный режим безопасности
-- args Предоставлять аргументы без сценария
Примеры:
REBOL script.r
REBOL script.r 10:30 test@domain.dom
REBOL script.r --do "verbose: true"
REBOL --cgi -s
REBOL --cgi --secure throw --script cgi.r "debug: true"
REBOL --secure none
Опять же, формат командной строки:
REBOL параметры сценарий аргументы
Где:
| | параметры | одна или более опции программы
|
| | сценарий | имя файла сценария, который вы хотите запустить. Если имя файла содержит пробелы, его следует полностью взять в кавычки.
|
| | аргументы | аргументы, переданные скрипту в виде строки. К этим аргументам можно получить доступ из сценария.
|
Все приведенные выше аргументы являются необязательными, и любая их комбинация разрешена.
Значки быстрого доступа
В некоторых операционных системах, таких как Windows или AmigaOS, вы можете создавать значки, в которых указать любой из вышеперечисленных параметров как часть имени исполняемого файла. Используя эту технику, вы можете создавать значки, которые напрямую выполняют сценарии REBOL с требуемыми параметрами.
2.6 Файл сценария
Обычно вы запускаете REBOL с именем файла сценария, который вы хотите, чтобы он выполнил. Допускается указание только одного файла со сценарием. Например:
REBOL script.r
Если имя файла содержит пробелы, его необходимо заключить в двойные кавычки.
2.7 Указание параметров
Опции программы обозначаются знаком плюс (+) или минус (-) перед символом или двойным тире (-) перед словом. Это стандартная практика для указания параметров программы в большинстве операционных систем.
Вот несколько примеров использования опций.
Чтобы запустить сценарий с параметром, например параметром -s , который выполняет сценарий с отключенной безопасностью, введите:
REBOL -s script.r
Чтобы получить информацию о параметрах REBOL, введите:
REBOL -?
REBOL --help
Чтобы запустить REBOL без открытия нового окна (это делается, когда вам нужно перенаправить вывод в файл или сервер), введите:
REBOL -w
REBOL --nowindow
Чтобы предотвратить распечатку информации о запуске, которая полезна, если вы перенаправляете вывод в файл или на сервер, введите:
REBOL -q
REBOL --quiet
Чтобы Выполнить выражение REBOL из командной строки, введите:
REBOL --do "print 1 + 2"
REBOL --do "verbose: true" script.r
Можно выполнить удаленный скрипт, расположенный на сервере, с помощью такой строки:
REBOL --do "do http://www.rebol.com/speed.r"
Чтобы изменить уровень безопасности REBOL, при выполнении скрипта введите:
REBOL -s script.r
REBOL --secure none script.r
Чтобы использовать сценарии REBOL для CGI (дополнительную информацию см. В разделе CGI - Common Gateway Interface Section в главе о сетевых протоколах ), введите:
REBOL -c cgi-script.r
REBOL --cgi
Также можно указывать несколько буквенных аргументов, при этом аргументы НЕ разделяются пробелами.
REBOL -cs cgi-script.r
REBOL --cgi --secure none cgi-script.r
Приведенный выше пример работает в режиме CGI с отключенной безопасностью. Сокращенный метод требуется для различных веб-серверов, которые ограничивают количество аргументов, разрешенных в командной строке (например, сервер Apache в Linux).
2.8 Файловое перенаправление
В большинстве систем можно перенаправить стандартный ввод и вывод из файлов и в файлы. Например:
rebol -w script.r > output-file
перенаправляет вывод информации из интерпретатора в файл. Так же, как
rebol -w script.r < input-file
перенаправляет ввод данных из файла.
При перенаправлении файлового ввода-вывода ...
Используйте параметр -w, чтобы предотвратить открытие окна консоли REBOL, поскольку оно мешает стандартному перенаправлению ввода и вывода.
2.9 Аргументы скрипта
Все, что указано в командной строке после имени файла сценария, передаётся сценарию в качестве аргумента. Это позволяет писать сценарии, принимающие аргументы прямо из командной строки. Например, если вы запустите REBOL со строки:
REBOL script.r 10:30 test@domain.dom
Есть два способа получить аргументы командной строки. Первый метод возвращает аргументы в виде блока значений REBOL:
probe system/options/args
["10:30" "test@domain.dom"]
Второй метод возвращает аргументы в виде строки:
probe system/script/args
"10:30 test@domain.dom"
Примечание, зависящее от версии:
В более ранние версии REBOL возвращали блок значений для поля script/args (аналогично options/args). Рекомендуется убедиться, что ваш сценарий получает правильный тип данных args, как показано выше.
2.10 Файлы запуска
При запуске REBOL пытается загрузить загрузочные файлы rebol.r и user.r. Эти файлы необязательны, но при обнаружении их можно использовать для настройки сети, определения общих функций и инициализации данных, используемых скриптами.
Rebol.r - файл сценария содержит специальные функции или расширения REBOL, которые входят в стандартный комплект поставки. Рекомендуется не редактировать этот файл, так как он перезаписывается с каждой новой версией REBOL.
User.r файл сценария содержит пользовательские настройки. Вы можете отредактировать этот файл и добавить любые необходимые определения или данные.
В многопользовательских системах может быть отдельный user.r для каждого пользователя. Пока файл user.r не является частью дистрибутива, он автоматически создаётся, если не существует.
При запуске REBOL ищет rebol.r и user.r файлы сначала в домашнем каталоге, а если их там нет, то в текущем каталоге.
Чтобы установить HOME каталог, вы можете установить переменную среды в соответствующем сценарии входа или запуска для вашей системы. Обратите внимание, что некоторые системы, такие как UNIX или Linux, уже это сделали, поэтому в этом нет необходимости.
Для примера в Windows NT для установки HOME вам нужно добавить:
set HOME=C:\REBOL
в окружении операционной системы, необходимо:
- Выбрать "Панель управления" настройками в Windows - меню "Пуск",
- Двойной клик по иконке "Система", затем выбрать "Переменные среды".
- Имя переменной "HOME", значение C:\REBOL (или другой путь, по которому расположен REBOL).
В системах Unix вы можете установить путь к REBOL, добавив строку, подобную следующей, в свой сценарий оболочки входа или профиль:
set HOME=/usr/bin/rebol
Для некоторых версий REBOL путь хранится в файле .rebol, который находится в вашем домашнем каталоге.
3. Выход из REBOL
Чтобы выйти из REBOL в любое время, выберите Quit в меню Console
File или набрав quit или q в командной строке.
Вы также можете выйти из программы из скрипта:
if now/time > 12:00 [quit]
Консоль REBOL может также выйти, если во время запуска произошла ошибка.
Exit не тоже самое, что Quit
Не используйте слово exit для выхода из REBOL. Это слово используется для выхода из функций, и при вводе с консоли будет возвращена ошибка.
4. Использование консоли
Всякий раз, когда вы запускаете REBOL/Core, он открывает консоль для отображения приглашения к вооду данных и ожидает ввода. Если вы указали программе в аргументе имя файла сценария, то этот сценарий будет запущен, и вы увидите результат его работы. Если вы не указывали файл сценария, консоль предложит вам ввести данные. Приглашение к вводу выглядит так:
>>
Если вы вводите выражение в строке ввода, оно выполнится, и все возвращённые значения отображаются после индикатора результата:
==
Например:
>> 100 + 20
== 120
>> now - 7-Dec-1944
== 20341
Изменение вида приглашения
Символы подсказки можно изменить, смотрите Приложение к консоли для получения дополнительной информации.
Консоль также становится активной, если сценарий обнаруживает ошибку или если сценарий вызывает функцию остановки.
4.1 Многострочный ввод
Если вы начинаете блок в командной строке и не заканчиваете его, блок расширяется до следующей строки. На это указывает приглашение, которое начинается со скобки и сопровождается отступом. Строка будет иметь отступ в четыре пробела для каждого открытого блока. Например:
loop 10 [
[ print "Пример"
[ if odd? random 10 [
[ print "тут"
[ ]
[ ]
Это также верно для многострочных строк, заключённых в фигурные скобки.
Print {Это длинная строка,
{ которая состоит не из одной,
{ а из нескольких строк.}
Скобки и фигурные скобки внутри строк в кавычках игнорируются. Вы можете выйти из режима ввода в любое время, нажав клавишу ESC.
4.2 Прерывание сценария
Сценарий можно прервать, нажав клавишу ESC, которая немедленно вернётся в командную строку.
Во время некоторых типов операционной системы или сетевой активности может наблюдаться задержка ответа на прерывание ESC.
4.3 Вызов истории
Каждая строка, введённая в REBOL, сохраняется для последующего использования. Клавиши со стрелками вверх и вниз используются для прокрутки списка ранее введённых строк. Например, однократное нажатие стрелки вверх вызывает предыдущую строку ввода.
Строки истории можно записать в файл, сохранив блок истории. Смотрите приложение к консоли для получения дополнительной информации.
4.4 Завершение слова
Чтобы ускорить набор длинных слов и имен файлов, в консоли REBOL есть функция автозавершения слов и имен файлов. После ввода нескольких букв слова нажмите клавишу табуляции. Если буквы однозначно идентифицируют слово, отображается остальная часть слова. Например, набрав:
>> sq
и нажав клавишу Tab на экране появится:
>> square-root
Если буквы не идентифицируют слово однозначно, вы можете снова нажать клавишу Tab, чтобы получить список вариантов. Например, набрав:
>> so
и нажав клавишу Tab дважды, получим :
>> sort source
so
и вы можете ввести остальную часть слова, чтобы оно было уникальным, и повторно нажать Tab для завершения его.
Завершение работает для всех слов, включая слова, определённые пользователем. Это также работает для файлов, которым предшествует знак процента.
>> print read %r
Нажатие на Tab может привести к:
>> print read %rebol.r
в зависимости, от содержимого вашего текущего директория.
4.5 Индикатор занятости
Когда REBOL ожидает завершения сетевой операции, появляется индикатор занятости, указывающий на то, что что-то происходит. Вы можете изменить индикатор на свой собственный. Смотрите Приложение к консоли для получения дополнительной информации.
4.6 Сетевые подключения
При инициировании сетевых подключений на консоли появляется сообщение. Например, набрав:
>> read http://www.rebol.com
connecting to: www.rebol.com
Если необходимо, вы можете отключить этот вывод, установив флаг молчания. Смотрите приложение к консоли для получения дополнительной информации.
4.7 Виртуальный терминал
Консоль предоставляет возможность виртуального терминала, который позволяет выполнять такие операции, как перемещение курсора, адресация курсора, редактирование строки, очистка экрана, ввод управляющих клавиш и запрос положения курсора.
Виртуальный терминал использует стандартные последовательности символов ANSI. Это позволяет вам писать независимые от платформы терминальные программы, такие как текстовые редакторы, почтовые клиенты или эмуляторы telnet.
Смотрите приложение к консоли для получения дополнительной информации.
5. Получение помощи
Существует несколько источников информации, для получения помощи: интерактивная справка , встроенный в REBOL, в исходной функции, документы на веб - сайте REBOL , в библиотеке сценариев REBOL , в списке рассылки REBOL и отправки обратной связи с REBOL .
Существует несколько источников информации: встроенная функция source,
документы на сайте REBOL,
библиотека скриптов,
список рассылок,
и форма обратной связи.
5.1 Встроенная справка
Функция help используется для быстрого получения справки по командам REBOL.
Введите help или ? в командной строке консоли, чтобы просмотреть сводную справку:
Функция справки предоставляет простой способ получить
информацию о словах и значениях. Чтобы использовать его,
укажите в качестве аргумента слово или значение:
help insert
help find
Чтобы просмотреть все слова, соответствующие шаблону:
help "path"
help to-
Чтобы просмотреть все слова указанного типа данных:
help native!
help datatype!
Также есть автозавершение слов из командной строки.
Введите несколько символов и нажмите клавишу TAB,
чтобы завершить слово. Если ничего не происходит, значит
найдено более одного слова. Для однозначной идентификации
слова необходимо достаточное количество символов.
Другие полезные функции:
about - общая информация
usage - аргументы командной строки
license - условия пользовательской лицензии
source func - исходный код функции
upgrade - обновить REBOL
Для получения дополнительной информации смотрите руководство пользователя.
Если вы указываете функциональное слово в качестве аргумента help, то печатается справочная информация, о этой функции. Например, если вы наберете:
help insert
то вы увидете:
ИСПОЛЬЗОВАНИЕ:
INSERT series value /part range /only /dup count
ОПИСАНИЕ:
Вставляет значение в серию и возвращает серию после вставки.
INSERT - это значение действия
АРГУМЕНТЫ:
series -- Серия в точке для вставки (Тип: битовый набор порта)
value -- Значение для вставки (Тип: любой)
УТОЧНЕНИЯ:
/part -- Ограничивается заданной длиной или положением.
range -- (Тип: номер серии портов)
/only -- Вставляет серию как серию.
/dup -- Дублирует вставку указанное количество раз.
count - (Тип: число)
Функция help также находит слова, содержащие указанную строку. Например, чтобы найти все слова, содержащие path, введите:
? "path"
И в результате мы получим:
Найдены следующие слова:
clean-path (функция)
lit-path! (тип_данных)
lit-path? (действие)
path (файл)
path! (тип_данных)
path-thru (функция)
path? (действие)
set-path! (тип_данных)
set-path? (действие)
split-path (функция)
to-lit-path (функция)
to-path (функция)
to-set-path (функция)
Вы также можете искать все глобально определённые слова с заданным типом данных. Например, чтобы перечислить все слова, которые являются функциями! типы данных, тип:
? function!
и увидим следующее:
Найдены следующие слова:
? (функция)
?? (функция)
about (функция)
alert (функция)
alter (функция)
append (функция)
array (функция)
ask (функция)
...
Чтобы получить список всех типов данных REBOL, введите::
? datatype!
Найдены следующие слова:
action! (тип_данных)
any-block! (тип_данных)
any-function! (тип_данных)
any-string! (тип_данных)
any-type! (тип_данных)
any-word! (тип_данных)
binary! (тип_данных)
bitset! (тип_данных)
block! (тип_данных)
char! (тип_данных)
datatype! (тип_данных)
date! (тип_данных)
decimal! (тип_данных)
email! (тип_данных)
...
5.2 Просмотр исходного кода
исходное соединение
:
join: func [
"Объединяет значения."
значение "Базовое значение"
остальное "Значение или блок значений"
] [
значение: либо серия? значение [копировать значение] [значение формы]
повторять значение остаток
]
Функции, определенные REBOL, включают мезонинные функции (встроенные функции, реализованные в REBOL) и пользовательские функции.
Опытные пользователи могут узнать больше о конкретных функциях REBOL, изучив их исходный код. Функция source отображает код для любой REBOL функции. Если вы наберёте:
source join
Будет показан исходный код функции join:
join: func [
"Concatenates values."
value "Base value"
rest "Value or block of values"
][
value: either series? value [copy value] [form value]
repend value rest
]
Функции, реализованные в машинном коде, не могут быть отображенны.
5.3 Скачать документы
Посетите сайт REBOL http://www.rebol.com/ для получения списка текущей документации.
В дополнение к этому руководству существует словарь REBOL, который охватывает все стандартные слова, доступные в REBOL. Если в справке консоли или в этом руководстве недостаточно информации о слове REBOL, поищите в словаре подробное описание.
Словарь обновляется с каждой версией REBOL и доступен по адресу http://www.REBOL.com/docs/dictionary.html.
5.4 Библиотека скриптов
Веб-сайт REBOL содержит библиотеку с многочисленными полезными отлаженными сценариями, которые охватывают множество тем. Библиотека разделена на категории, чтобы упростить поиск сценария, специфичного для данной функции. Вы также можете искать в библиотеке скрипты, содержащие определённое слово.
Библиотеку сценариев можно найти по адресу http://www.REBOL.com/library/library.html.
5.5 Список рассылки
Вы также можете получить помощь от сообщества пользователей REBOL, присоединившись к списку обсуждений REBOL по электронной почте. Чтобы зарегистрироваться, отправьте электронное письмо на адрес rebol-request@rebol.com, указав в строке темы слово «subscribe». Например:
send rebol-request@rebol.com "subscribe"
Убедитесь, что ваш верный адрес электронной почты был корректно задан с помощью set-net.
5.6 Как с нами связаться
Мы хотим узнать, что вы думаете; свяжитесь с нами, чтобы:
- Сообщайте о сбоях или проблемах
- Расскажите, как вы используете REBOL
- Напишите предложения
- Запросите дополнительную информацию о наших продуктах.
Вы можете связаться с нами через страницу обратной связи на нашем веб-сайте.
6. Ошибки
6.1 Сообщения об ошибках
В REBOL есть несколько типов ошибок. При возникновении ошибки отображается сообщение о том, что это была за ошибка и примерно где она произошла. Например, если вы наберёте:
abc
** Ошибка сценария: abc не имеет значения.
** Где: abc
Тип ошибки обозначается несколькими первыми словами сообщения. В приведённом выше примере ошибка является ошибкой сценария . Ошибки сценария являются наиболее распространёнными и возникают, когда вы неправильно используете функцию языка или с неправильными аргументами. Другие типы ошибок описаны в разделе "Типы ошибок".
|
Тип ошибки
|
Описание
|
|---|
|
Syntax errors Синтаксические ошибки
|
Происходит, когда сценарий содержит недопустимое значение или отсутствует заголовок, цитата, скобка или кавычка.
|
|
Math errors Математические ошибки
|
Возникает при делении на ноль или при математическом переполнении или потере значимости.
|
|
Access errors Ошибки доступа
|
Происходит, когда нет доступа к файлу, каталогу или сетевой операции или ограничены права доступа.
|
|
Throw errors Ошибка прерывания
|
Происходит при неправильном использовании команды break, exit или throw.
|
|
User errors Ошибки пользователей
|
Определяется скриптом пользователя.
|
|
Internal errors Внутренние ошибки
|
Возвращается при возникновении проблемы в системе REBOL. Если вы столкнулись с одним из этих типов ошибок, сообщите об этом через форму обратной связи.
|
Сценарий может улавливать и обрабатывать большинство типов ошибок. Смотрите описание функции trying в разделе «Пробные блоки».
Приложение «Ошибки» также содержит полезную информацию об ошибках.
6.2 Перенаправление ошибок
При обнаружении ошибок в не интерактивных сеансах, например, при работе в режиме CGI (-c или --cgi) или в безоконном режиме (-w или --nowindow), сеанс автоматически завершается.
Если сценарий завершается во время работы в не интерактивном режиме, вы можете использовать перенаправление оболочки для вывода ошибки в файл:
REBOL -cs my_script.r >> my_script.log
Эта запись позволит добавить вывод к файлу в большинстве операционных систем.
7. Обновление
2.3.0.3.1
:
система печати / версия
Обновить
:
Windows 95/98 / NT iX86 REBOL / core 2.3.0.3.1
или же:
При запуске интерпретатора отображается баннер, указывающий версию программы. Номера версий имеют формат:
версия.редакция.обнавление.платформа.вариант
Например, номер версии:
2.3.0.3.1
указывает, что вы используете версию 2, редакцию 3, обновление 0 для Windows 95/98 / NT (номер платформы REBOL 3.1). Полный список всех номеров платформ доступен на http://www.rebol.com . Этот HTML-файл также содержит скрытую базу данных REBOL, которую можно использовать для определения платформы.
Вы можете получить номер версии из приглашения REBOL с помощью:
print system/version
REBOL Technologies поддерживает только последнюю версию REBOL. Вы можете убедиться, что у вас установлена последняя версия, и автоматически обновить ее, если она устарела. Для этого убедитесь, что вы подключены к Интернету, а затем из REBOL введите:
upgrade
RREBOL возвращает одно из следующих сообщений о вашей версии:
Эта копия Windows 95/98/NT iX86 REBOL/core 2.3.0.3.1 в настоящее время актуальна.
или же:
Эта копия Windows 95/98 / NT iX86 REBOL / core 2.1.2.3.1 устарела. Текущая версия: 2.3.0.3.1.
Скачать текущую версию?
Для обновления до последней версии введите Y (да). В противном случае введите N (нет)..
|