27 ноября 1998
  Софт  

     Описание редактора AC Edit v0.09
 Alone Coder

   Редактор AC Edit(далее просто Edit)раз-
вился из простой текстовой листалки.
   История его возникновения весьма поучи-
тельна. Случилось так,что,когда мне (Alone
Coder'у)необходимо было (мне так казалось)
набрать книгу братьев Стругацких<Понедель-
ник начинается в субботу>,под рукой не бы-
ло ни одного подходящего текстового редак-
тора:Tasword не приемлю,TLW 2 - очень мед-
ленный, а ZX-Word'а попросту не имелось. К
счастию, в мои руки попал журнал ZX-Format
N~5, в приложении к которому имелась прог-
рамма MED FDD Ковалевского, и ваш покорный
слуга решил посмотреть,с чем это едят.Пер-
вое  впечатление было весьма положительно:
быстро бегающий курсор,окошки,менюшки,help
'ушки, аж целых 30.5 k памяти  для текста.
(Это  на  128k-то компьютере! Сначала я не
придавал этому значения,т.к. у Tasword 21k
памяти, у TLW 2 - 23k, а у ZX-Word - 26k).
Вся  прелесть этого редактора была оценена
автором  этого описания по достоинству то-
лько  тогда, когда оказалась набрана треть
повести.Дело в том,что формат этого редак-
тора не совместим ни с одним другим сущес-
твующим текстовым редактором, а памяти его
не  хватает даже на одну главу книги. Но -
начал так начал - пришлось донабрать text.
Oн до сих пор валяется где-то на диске.Как
вы думаете, стоит ли начать печатать его в
журнале?
   То  был январь 1998 года. Когда в конце
августа  приехахом из деревни и начаху 2-й
курс, автор имел много невоплощенных идей.
Первым делом я написал кубик Рубика(и этим
погасил интерес к механическому варианту).
Сильно  обрадовавшись, ваш  покорный слуга
пошел  на радиорынок и познакомился с про-
давцом  Вовой для того, чтобы поделиться с
ним своею крутизной и с надеждой, что Вова
сможет  это  продать. Но  тот не только не
продал, но даже и не увидел кубика - кубик
хранился на дискете в формате ALASM,а Вова
не умел (!) с ним обращаться.
   Тогда  автор стал носить Вове свои ста-
рые программы,кое-как состряпав Viewer для
их описаний (в режиме 42 pitch). Для того,
чтобы набирать такие тексты, а также пото-
му,что у меня и раньше была такая мечта, я
взялся  написать текстовый редактор сам. В
листалку для этого надо было всего-навсего
вставить  курсор  и  осуществить обработку
нескольких дополнительных клавиш.
   Первоначально были введены кнопки Graph
и Delete, соответственно  имеющие  функции
Del и Backspace. Вторая даже умела стирать
Enter,сращивая этим самым строки.Протащив-
шись от своей безмерной крутизны (куда по-
дальше),автор подумал, что это какой-то уж
больно усеченный текстовый редактор - даже
ножницами  можно написать больше, и сделал
ввод произвольного латинского символа;спу-
стя день - еще и русского;еще через день -
вообще любого - через Caps Shift.
   Не  знаю, как  мне пришла в голову идея
использовать  128k память, но проектирова-
ние, расчет и отладка этого добавления за-
няла  дня четыре. Зато это было первое мое
достижение,которым можно гордиться по-нас-
тоящему (известен всего один текстовый ре-
дактор, обрабатывающий 64 k - Tasword 128,
но  строка  его имеет фиксированную длину;
листалок же столь емких есть minimum три).
   Когда  редактор был уже практически го-
тов, староста  параллельной группы дал мне
почитать Гаррисона.Ко мне в руки попал ре-
дкий текст, и я просто не мог его не пере-
печатать! Последние штрихи в программе по-
явились именно из-за потребностей быстрого
набора текста,т.к.я надеялся выпустить жу-
рнал  (а куда же еще свалить редкий текст,
<гениальные> программы и призывы к сотруд-
ничеству?)к ноябрю,и решения своего менять
не имел намерения.(Как вам фразочка?)
   Как было бы прекрасно, кабы  все авторы
Text Editor'ов  почувствовали себя в поло-
жении их пользователей!

   На этом история кончается, и начинается
собственно описание редактора:

   После загрузки он очищает текст;специа-
льной кнопки для очистки не предусмотрено,
хотя вполне можно предусмотреть:я полагаю,
что за один сеанс работы с редактором ник-
то не станет редактировать два текста.
   Курсор,естественно,двигается стрелочка-
ми,но имеется одно указание:если вы любите
нажимать на кнопки медленно,то для руления
по  тексту лучше перейдите в латинский ре-
жим, т.к.нажатие цифр 5,6,7,8,0 при долго-
временном  удержании  Caps Shift  редактор
понимает  как прописные русские Ш,Щ,Э,Ю,Ч.
Сие повышает скорость набора текста.Комби-
нации  SS и стрелочек имеют те же функции,
что и в MED,т.е.:SS/=Home,SS/=End,SS/ -
начало текста,SS/ - конец текста.
   Про кнопки Delete и Graph уже было ска-
зано.По убедительной просьбе Юры Свиридова
CS/9 теперь тоже может стирать Enter, при-
чем  в любом месте после окончания строки.
Словом,всё как в WordStar или TurboPascal.
   Максимальная  длина строки - 255 симво-
лов, при превышении которой редактор будет
бузить;впрочем,курсор все равно бегает то-
лько по первым 43.Ограничение возникло из-
за  того, что  у  редактора буферизирована
строка.(Об этом частенько не думают авторы
текстовых  редакторов, в  силу чего в этих
редакторах невозможно редактировать текст,
т.к.скорость ввода символов превышает ско-
рость их восприятия компьютером.)
   CS/3 и CS/4 как обычно листают странич-
ки соответственно назад и вперед.
   Enter ставит коды 13,10.Это стандарт,но
когда-нибудь я сделаю режим с 13.
   Edit ставит табуляцию в 3 символа.То же
самое делает Enter,нажатый в конце строки.
   SS/Space - Рус/Lat.
   CS/Enter - Save file.
   SS/Q - сжать строку к левому краю. Нас-
чет абзацев не извольте беспокоиться - ре-
дактор про них знает.
   SS/W - ввести имя редактируемого файла.
Работают кнопки Delete и Enter. Расширение
менять нельзя.
   SS/E - Edit file.Файл выбирается из ка-
талога. Работает курсор,Enter - Load,Break
- отмена.Не выводятся файлы типов B и H.
   SS/I - во многих редакторах строка ста-
туса занимает место на экране,у меня же ее
можно увидеть лишь по заказу,удерживая эти
клавиши.Я полагаю,что так удобнее.
   SS/Enter - весьма  специфичная функция:
все  строки  до курсора записать на диск и
удалить из памяти.
   Не советую нажимать CS/SS/T - это отла-
дочная функция,и вам она не потребуется.
   В  русском  режиме редкие буквы (ну как
сказать - редкие,ведь <ф> или <ц> встреча-
ются реже,чем <ч> и <ш>) можно вводить как
классическим способом,- через Symbol Shift
- так и нажимая соответствующие цифры:
┌──────┬───┬───┬───┬───┬───┬───┬───┐
│ знак │ ъ │ ш │ щ │ э │ ю │ - │ ч │
├──────┼───┼───┼───┼───┼───┼───┼───┤
│цифра │ 1 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │
└──────┴───┴───┴───┴───┴───┴───┴───┘
У  меня  они написаны прямо на клавиатуре.
Прописные  буквы, как автор уже имел честь
вам сообщить, вводятся с Caps Shift'ом,что
весьма удобно. Большой Ъ вводится на отжа-
тие, потому что:
   Caps Shift + набор  из трех цифр вводит
соответствующий этому коду символ.Коды мо-
гут начинаться только на 1 или 2. Так,нап-
ример,CS/241 даст ё,CS/240 - Ё,CS/127 - ,
CS/281 - . Остальные символы можете найти
в  книге П. Нортона <Программно-аппаратная
организация  IBM  PC>, или же вам придется
построить  таблицу опытным путем. Редактор
не имеет символа ограничения текста,поэто-
му нельзя напечатать только два символа:10
и 13 (инверсный кружок и нотка). Кстати,по
поводу символа №(код 252). Очевидно,на его
месте  должен стоять символ бесконечности,
т.к. место  буквы <эта> в таблице из книги
Нортона занимает именно бесконечность (код
236).Вероятно,при проектировании этой таб-
лицы произошла ошибка,которая теперь расп-
ространилась до чрезвычайности: в драйвере
keyrus (IBM PC) на этом месте N~,в ALASM -
совершенно непонятный  символ надстрочного
n... Из-за нестандартного использования CS
Edit работает  только при нажатии на соот-
ветствующую кнопку,а не на CS/1; Caps Lock
же работает только на отжатие.
   При  попытке ввода символа в 43-й пози-
ции  происходит  автоматический  перенос и
выравнивание  строки по правому краю. Пока
что дефис вам придется вставлять самим, но
как-нибудь и он будет автоматизирован. Да!
Выравнивание  по  правому  краю происходит
без предварительного сжатия строки,поэтому
при вводе текста не ставьте пробелов после
точек,запятых и пр. Для красоты выравнива-
ния пробелы  после знаков препинания имеют
больший приоритет, чем прочие пробелы.
   Перебор максимальной длины текста 65280
bytes - не отслеживается.

P.S.:Автором данной статьи была продемонс-
трирована рекордная скорость набора текста
именно в этом редакторе: 157 bytes/minute!
(Согласно правил состязания замер произво-
дится по результатам часа работы.)



Other articles:


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
Iron - XTR Modem.
News - Maxwell in Samara.
Reflections - Visiting Cristobal junta. Methodology to evaluate fiction and inventing new ways of fantastic ideas.

В этот день...   23 November