Окна и редактируемые файлы
Редактор показывает участок редактируемого файла на экране терминала в "окне". Имя файла, который нужно редактировать первым, указывается в параметрах вызова red. Можно перейти к другому файлу, воспользовавшись командой <USE>. Кроме того, редактор автоматически подключает псевдо-файл "#", в котором запоминаются все отмеченные или исключенные строки.
"Окно" можно разделить на несколько меньших "окон" с помощью команды <M-PORT>, отобразив в каждом участок того или иного файла (рис.2). Для упрощения переключения с файла на файл любое "окно" может быть связано также с "альтернативным файлом". Команда <USE> без параметров меняет местами основной и альтернативный файлы в текущем окне. При входе в редактор альтернативным является файл /usr/lib/re.std, содержащий краткое описание редактора.
Для уничтожения окон служит команда <ARG><M-PORT>. Изменения, произошедшие в файле, повторяются одновременно во всех "окнах", связанных с ним.
Среди всех "окон" имеется "текущее", в котором находится курсор. Левые и правые символы-ограничители несут следующую информацию:
слева:
; - данной строки в файле нет;
Пример "окон"
.....................................
.-----------------------------------.
.! !! !.
.! текущее !! еще одно !.
.! "окно" !! "окно" !.
.! !! !.
.!длинная строка>! !.
.! !! !.
.! !! !.
.; !! !.
.; !! !.
.-----------------------------------.
.arg: file: a line 10 .
.....................................
Рис. 2
! - строка есть в файле и "окно" начинается с 1 колонки
файла;
< - "окно" начинается не с 1 колонки файла, а сдвинуто
по файлу вправо;
справа:
! - в строке нет информации справа от окна;
> - строка продолжается за правую границу "окна".
Все изменения, сделанные на экране, запоминаются и при выходе из редактора по команде <EXIT> (или по команде <ARG>q<RETURN>) измененные файлы записываются в архив. При этом старые варианты файлов переименовываются путем добавления суффикса .b, и в результате также сохраняются в архиве. Имеется возможность записать файл под текущим или под новым именем в архив еще в процессе редактирования (команда <SAVE>), а также выйти из редактора без записи измененных файлов, введя <ARG>qa<RETURN>.