logo
TurboProlog / Документация / TOM_1

Edit/2 и edit/13

Предикат edit существует в двух версиях: простейшей, с двумя аргу-

ментами и более сложный, с большим числом аргументов.

Простейшая версия имеет форму:

edit(InStringArg,OutStringArg) /* (i,o) */

Обращение к edit в вашей программе приведет к выполнению редактора

Турбо Пролога в активном окне, причем все средства редактора становятся

доступными пользователю. (Редактор описан в части 2 и в справочном руко-

водстве Турбо Пролога). Пользователь задает для редактирования входной

текст InStringArg, и OutStringArg будет содержать результат редактирова-

ния. Например, следующий вызов редактора может использоваться для запуска

редактирования в пустом окне:

edit("",Text).

Другая версия предиката использует формат:

edit(

InStringArg, OutStringArg, HeadStr, HeadStr2, /*(i,o,i,i,*/

Msg, InitPos, HelpFileName, RetStatus, /* i,i,i,i,*/

Indent, Insert, TextMode, RetPos, RetStatus) /*i,i,i,o,o)*/

Этот предикат поддерживает дополнительные функции, недоступные для

edit/2, такие, как установка режима выравнивания текста, выделения абза-

ца, возвращение положения курсора в момент завершения редактирования и

т.д. Как и в случае с простейшим предикатом, edit/13 вызывает редактор

Турбо Пролога в активное окно, при этом все функции редактора становятся

доступными пользователю.