Boris Kuritsin's CardFile. Версия 3.0A
Система управления электронной картотекой
РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ
Copyright (c) Борис Курицын
декабрь 1994
[22.9 кВ]
Что нового в версии...
------------------------------------------
Версия 3.0
Значительные изменения внутренней структу-
ры, исправление около 10 мелких ошибок,
новая палитра цветов, новый улучшенный
драйвер клавиатуры, специальный тип файла
для картотек, более эффективное использо-
вание памяти, полная (257 байт) таблица
векторов прерываний, доработка документа-
ции и др.
Версия 3.0а
Исправление ошибки, внесённой при встраи-
вании нового драйвера клавиатуры.
Что такое CardFile?
------------------------------------------
CardFile - система управления базой дан-
ных, организованной по принципу картотеки.
CardFile является почти полным переложени-
ем одноименной программы из MicroSoft Win-
dows 3.1.
Оконный интерфейс ВК CardFile
------------------------------------------
Программа поддерживает оконный интерфейс с
пользователем, близкий к интерфейсу ком-
пьютеров Apple Macintosh.
Интерфейс построен на основе библиотеки
Human Interface Library ver 3.8, написан-
ной автором.
Все управление программой, кроме ввода
текста, выполняется курсором-стрелкой, ко-
торая управляется от:
- Кемпстон джойстика
- Курсор-джойстика и курсорных клавиш
- Набора клавиш Q A О Р M
- Набора клавиш S X О Р Space
Перемещая курсор по экрану, Вы обнаружите,
что на нем есть зоны, где стрелка высвечи-
вает слова или символы. Если, установив
курсор на такую зону, нажать клавишу ВЫ-
БОР, то произойдет действие, определяемое
словом (символом), которое было высвечено.
Если это элемент меню, откроется окно ме-
ню, если слово оканчивалось троеточием,
будет запрошена дополнительная информация,
если за словом нарисован знак >, будет от-
крыто окно с подменю действий.
В дальнейшем операцию расположения курсора
на выделяемой зоне и нажатия клавиши ВЫБОР
мы будем называть ФИКСИРОВАНИЕM. Чтобы
закрыть ошибочно открытое окно, необходимо
ЗАФИКСИРОВАТЬ курсор за пределами окна (не
на зоне, а где угодно). ПРИМЕЧАНИЕ: сущес-
твуют зоны, которые не индуцируются инвер-
тированием.
Специальные символы применяются, чтобы по-
казывать текущее состояние переключателей
или в случае, когда нужно выбрать один
объект из нескольких.
Во-первых, - это "галочка". Она отмечает
выбранный из нескольких объект или режим.
Во-вторых, - это пара символов [ ] и [х].
Наличие крестика в символе означает вклю-
ченное состояние индуцируемого режима.
Аналогично, пара символов () и (*) ис-
пользуется для набора переключателей режи-
мов с зависимой фиксацией.
Кнопка - это слово или символ в прямоу-
гольной рамке. Она используется для быст-
рого доступа к командам. Кнопка может ком-
бинироваться с другими специальными симво-
лами.
В процессе работы с CardFile Вы обнаружи-
те, что некоторые кнопки и строки меню не
всегда выбираются - значит, исполнение ко-
манды, ими осуществляемой, невозможно в
данный момент. Например, Вы начали рабо-
тать с чистой картотекой при помощи коман-
ды File | New. Тут же оказалось, что не
высвечивается множество команд: сохране-
ния, печати, редактирования, поиска, не
работают кнопки движения по списку... По-
чему? Просто ни одна из этих операций не
имеет смысла, если в картотеке нет хотя бы
одной карточки. Как только Вы создадите
карточку (Card | Add), все эти функции
станут доступны. Иногда зона диалога всё
же выбирается, но не выполняет никаких
действий.
Общепринятым является обозначение пути по
меню в виде: а|Ь|c|d. Это означает, что
нужно войти в меню а, там выбрать опцию Ь,
в открывшемся окне выбрать элемент меню
или опцию c и т.д. Такой метод описания
применяется в настоящей инструкции. Ска-
жем, запись card|add|after означает, что
нужно войти вменю card, там выбрать эле-
мент add, и в открывшемся подокне выбрать
команду after. Такая последовательность
действий вызовет исполнение команды "до-
бавить новую карточку после текущей".
Структура картотеки
------------------------------------------
Карточка организована по принципу ИНДЕКС
-> ИНФОРМАЦИЯ, как это сделано в любой
картотеке. ИНДЕКСОМ является строка симво-
лов длиной не более 30. ИНФОРМАЦИЯ - любой
текст, сохраненный в карточке, не более 18
строк шириной до 30 символов.
Например, при создании картотеки адресов и
телефонов наиболее логично индексом сде-
лать фамилию и инициалы персоны, а все ос-
тальные данные внести в поле ИНФОРМАЦИЯ.
Просмотр, режимы просмотра
------------------------------------------
Картотеку можно отображать на экране в 2-х
режимах: КАРТОЧКА и СПИСОК (CARD и LIST).
В режиме CARD Вы видите индекс карточки
вверху и информацию карточки ниже.
В режиме LIST на экране Вы видите список
индексов карточек (до 20 индексов одновре-
менно). В режиме LIST Вы можете перейти к
просмотру конкретной карточки, зафиксиро-
вав курсор на ее индексе (подробнее см.
"Опции режима LIST").
Переключение режимов выполняется фиксиро-
ванием курсора на кнопке с переменным сос-
тоянием CARD/LIST, которая расположена в
верхней части экрана.
Активная карточка
------------------------------------------
Карточка, отображенная на экране в режиме
Card, или верхняя карточка из отображенной
части списка в режиме List называется ак-
тивной. Большинство действий выполняются
именно над активной карточкой.
Линейка кнопок
------------------------------------------
Линейка кнопок содержит элементы для быст-
рого управления картотекой. Это:
- Кнопка Card/List для переключения режи-
мов просмотра.
- Кнопка "В начало" (в виде сцепленных
квадратов), которая перемещает указатель
активной карточки в начало списка.
- Кнопки "Вверх" и "Вниз", которые служат
для перемещения по картотеке. Их "нажатие"
перемещает указатель активной карточки к
началу или концу картотеки на 1 или 20
карточек в зависимости от режима просмот-
ра: 1 в режиме CARD и 20 - LIST.
- Кнопка "f.next", которая дублирует опцию
меню Search | Find next.
Планка меню
------------------------------------------
При помощи этой планки, расположенной в
самой верхней строке экрана, осуществляет-
ся доступ к "выпадающим" (pull-down) меню.
Меню File
содержит все команды ввода/вывода, печати
и т.д.
Меню Edit
дает доступ к командам редактирования
карточек.
Меню Card
позволяет манипулировать карточками: до-
бавлять, удалять, дублировать их.
Меню Search
применяется для любых видов поиска инфор-
мации в картотеке.
Меню Misc
содержит команды различного назначения.
Контроль сохранения картотеки
------------------------------------------
CardFile запоминает информациюо любых из-
менениях в картотеке и при попытке выпол-
нить разрушающие действия (exit, open,
link) выдает предупреждение: File пот sa-
ved! с предложением отказаться от опера-
ции.
Меню File
------------------------------------------
Группа команд ввода/вывода:
File|new
Начать создание новой картотеки; текущая
стирается.
File|open...
Открыть файл. Вызывается диалоговое окно
"Файловая операция" для выбора файла (см.
"Окно <<Файловая операция>>" относительно
работы с этой и последующими командами
ввода/вывода).
File|save
Сохранение картотеки в файле, с последним
использованным именем, на последнем ис-
пользованном устройстве; при работе с дис-
ком может быть запрошено разрешение на пе-
резапись (overwrite) файла.
File|Save as...
Сохранение файла с запросом имени через
стандартное окно.
File|merge...
Слияние картотек; к текущей подгружается
указанная картотека; ее карточки размеща-
ются в конце списка.
Группа команд печати:
File|print
Печать активной карточки на принтере.
File|print all
Печать всей картотеки на принтере.
Печать можно прервать нажатием BREAK.
Смотри "Связь с принтером" для подробной
информации.
Группа команд связи с операционной систе-
мой:
File|DOS shell
Временный выход в TR-DOS; возврат по ко-
манде RETURN.
File|exit
Выход из CardFile; при подключенном Beta
Disk Interface пытается запустить програм-
му boot с текущего дисковода, полагая, что
это оболочка TR-DOS.
Меню Edit
------------------------------------------
Edit|index:
Редактирование в окне индекса активной
карточки; завершается нажатием Enter.
Edit|info:
Редактирование информации активной кар-
точки; завершается нажатием ss/Q или cs/
ss.
Общая информация. При редактировании всег-
да раборают следующие клавиши:
Caps Lock (CS/2)
переключатель режима заглавных букв.
Delete (CS/0)
удаляет символ слева от курсора.
Edit (CS/1)
переключатель режима кириллического/ла-
тинского ввода, что индуцируется символом
"L" (лат.) в левом нижнем углу текущего
окна.
SS/Е
очищает редактируемую строку.
Редактор карточки. Редактор`информации
карточки имеет отличия от редактора полей
ввода. Он позволяет перемещать курсор по
символам при помощи стрелок и вносить из-
менения в режиме ВСТАВКА.
Чтобы удалить текущую строку, нажмите SS/
W; а чтобы вставить пустую строку перед
текущей - SS/I. Нажатие Enter перемещает
курсор к началу следующей строки. Редакти-
рование карточки завершается нажатием SS/
Q, Extend. Редактор карточек содержит бу-
феризированный драйвер клавиатуры (буфер -
16 символов). Если Вы вводите текст доста-
точно быстро, карточка не перерисовывает-
ся, чтобы быстрей обрабатывать Ваш ввод.
Она будет перерисована, как только Вы сде-
лаете небольшую паузу в наборе.
Меню Card
------------------------------------------
Card|add|before/after
Добавляет пустую карточку перед активной
(before) или после неё (after).
Card|delete
Удаляет активную карточку, предварительно
спрашивая подтверждения.
Card|duplicate
Дублирует активную карточку.
Card|link
См. "Логически связанные картотеки".
Меню Search
------------------------------------------
Search|find...
в диалоговом окне нужно ввести текст для
поиска, а так же указать, нужно ли искать
его от начала картотеки (from begin) или с
текущей позиции (from this card) и где ис-
кать: в индексах (in index), в информации
(in info) или в обоих сразу.
Search|find next
поиск следующего вхождения текста после
того, как он уже был найден.
Search|quick...
отличается от |find... только тем, что
после открытия окна сразу активизируется
редактор поля Find What, а по завершении
редактирования начинается поиск с текущими
значениями переключателей. Команда Quick
является более быстрым методом доступа к
команде Find.
Поскольку можно выбирать, где (в индексе
или информации) искать текст, меню Search
позволяет очень удобно находить любую ин-
формацию в картотеке.
Когда текст найден, карточка, его содержа-
щая, становится активной (режим просмотра
не изменяется).
Если текст не найден, выдается окно с со-
общением об этом, а активной становится
первая карточка.
Меню Misc
------------------------------------------
Misc|Memory info
Информация о занятости памяти.
Misc|Refresh screen
Восстановление содержимого экрана в слу-
чае его нарушения по какой-либо причине.
Misc|About
Сообщает об авторе и версии программы.
Также выдаётся сообщение о лицензии.
Misc|Pallete
Позволяет изменить цветовую палитру
оконного интерфейса программы. Предлагает-
ся на выбор 3 палитры:
blue - основная, которая активна непосред-
ственно при входе в программу;
black/white - монохромная, которую предпо-
читают владельцы черно-белых мониторов;
ocean - дополнительная цветная, в которой
любят работать владельцы очень качествен-
ных цветных мониторов.
Misc|Options
Различные установки режимов.
After CR append LF
Нужно ли при передаче на принтер переда-
вать код LF после кода CR; это зависит от
принтера и драйвера.
Recode то КОИ-8
Нужно ли при передаче данных на принтер
перекодировать их в кодировку КОИ-8.
Kempston joystick
Разрешено ли управление от Кемпстон-
-джойстика.
Click... switches то
См. "Опции режима List"
Misc|smart drives
Внимание! Не пользуйтесь командой, не
прочитав инструкцию.
Команда "Быстрые приводы" применяется с
теми версиями системы TR-DOS, которые при
ошибке считывания сектора уменьшают ско-
рость шагового двигателя привода головок
дисководов. Такое уменьшение часто приво-
дит к ухудшению читабельности дискет и к
замедлению обмена с диском. Smart drives
устанавливает для всех иницализированных
дисководов скорость перемещения головки,
равную 8 (в блоке параметров TR-DOS, по
адресам 23802-23805). Внимание! Возможно,
существуют дисководы, для которых такая
скорость велика! Не применяйте smart dri-
ves, если у Вас такой дисковод! Проверить
это можно так: с каждого дисковода считай-
те каталог, после чего из Basic'а дайте
команду: PRINT РЕЕК (23802+drive) где dri-
ve - номер дисковода (от 0 до 3). Если хо-
тя бы для одного из подключенных дисково-
дов значение больше 8, smart drives лучше
не использовать.
Окно "Файловая операция"
------------------------------------------
Это стандартное окно спецификации CUA на
пользовательский интерфейс.
Задача пользователя при диалоге в этом ок-
не - выбрать устройство и имя файла для
операции ввода/вывода, которая инициирова-
ла появление окна.
Пользователь может указать имя файла сле-
дующим образом: отредактировать его обыч-
ным методом в поле Filename или фиксацией
курсора на имени из скроллера файлов теку-
щего устройства. Список в скроллере можно
"тащить", нажимая на кнопки "вверх" и
"вниз" линейки прокрутки. Позиция ползунка
линейки отражает то, какая часть списка
файлов видна в данный момент, а длина пол-
зунка показывает, насколько много файлов
поместилось в зону просмотра скроллера по
сравнению с их общим количеством.
Нажимая на стрелку в строке Drive, можно в
подокне сменить устройство ввода/вывода
(естественно, для ленты скроллер недосту-
пен). Кнопка Ок завершает выбор имени,
кнопка Cancel отменяет операцию, кнопка
ReRead перечитывает каталог.
Обратите внимание: ввод пустого имени фай-
ла при операции Open или Merge для магнит-
ной ленты означает, что необходимо счи-
тать первый попавшийся файл (с версии
2.5).
С версии 2.6 в окно добавлен флаг Turbo
таре. Если он активен, то ввод/вывод на
ленту производится в турбо-формате (ско-
рость 2400 бит/сек).
С версии 2.7 зоны линейки прокрутки не ин-
вертируются. Фиксация курсора на каком-то
участке линейки приводит к перемещению ту-
да ползунка скроллера.
С версии 2.8 картотеку можно сохранять на
дисках системы TR-DOS не только с типом
файла <С>, но и со специальным типом <F>.
Это позволяет более просто находить карто-
теки в каталоге диска. В нормальном состо-
янии (флаг F-files выключен) в скроллере
показываются файлы типа <С>. Когда флаг F-
-files включен, в скроллере показываются
файлы типа . Соответственно, в зависи-
мости от положения F-files файл сохраняет-
ся с типом <С> или . Используя файлы
типа , Вы должны помнить, что из-за
нестандартности типа они не могут быть об-
работаны (скопированы, переименованы, уда-
лены) командами TR-DOS, а только оболочка-
ми таких систем как Conver, IS-Shell,
Service и т.п. Чтобы не запутаться с фай-
лами, автор рекомендует хранить картотеки
только с типом <С> или только с типом .
Проблемы обмена с магнитной лентой нет в
любом случае: действие флага F-files рас-
пространяется только на TR-DOS.
С версии 3.0 память для считывания катало-
га диска (для составления списка скролле-
ра) выделяется во внутренней динамической
памяти CardFile. Поэтому, если нет хотя бы
256 свободных байт (что можно узнать опци-
ей Misc | Memory info), то скроллер запол-
няться и работать не будет, что не влияет
на работу остальных элементов окна. В этом
случае каталог Вы можете просмотреть в TR-
-DOS, используя команду Dos shell.
Опции режима List
------------------------------------------
Действие, которое происходит при фиксации
курсора на индексе карточки в режиме List,
Вы можете выбрать сами (с версии 2.2).
Этот выбор осуществляется изменением запи-
си Click... switches то в окне Misc | Ор-
tions. Изменятся запись путем фиксации
курсора на символе "стрелка вниз" возле
записи, после чего открывается ещё одно
окно с вариантами:
NOTHING - нет дополнительной функции, т.е.
фиксация курсора на индексе карточки в ре-
жиме List только делает её активной;
CARD VIEW - переход в режим card с указан-
ной карточкой;
LINK - попытка сделать операцию link с
указанной карточкой;
EDIT INFO - редактировать поле info ука-
занной карточки;
EDIT INDEX - редактировать поле index ука-
занной карточки.
Две последние функции сохраняют режим List
после исполнения операции.
Такой подход оказывается весьма удобным и
эффективным. В зависимости от того, чем Вы
собираетесь заниматься в ближайшее время,
Вы устанавливаете необходимую Вам функцию
в меню Misc | Options и в дальнейшем имее-
те возможность более быстро получать дос-
туп к этой функции. При этом через меню Вы
можете вызвать любую другую функцию, но
менее оперативно. Функцией по умолчанию
является card view.
Связь с принтером
------------------------------------------
Принтер должен быть подключен стандартным
образом на поток #3 через любой интерфейс.
Если применяемый интерфейс принтера требу-
ет подгрузки драйвера, то он должен быть
загружен до запуска CardFile (драйвер дол-
жен быть расположен в буфере ZX-Printer).
Применяемый принтер должен поддерживать
кодовую страницу 866 (в просторечии "аль-
тернативная кодировка") или кодировку КОИ-
-8 для нормальной печати русских символов.
Кодировка переключается в меню Misc | Ор-
tions.
Если Вы используете интерфейс ZX Lprint
III, не забудьте перевести его в неинтер-
претирующий режим передачи данных командой
LPRINT : LPRINT CHR$ 5 перед запуском Card
File.
Если Ваш принтер требует какой-либо коман-
ды для печати в кодировке КОИ-8, переда-
вайте эту команду до загрузки CardFile.
Передача ее из CF не поддерживается, так
как на нее нет стандарта.
Формат файла картотеки
------------------------------------------
Здесь приводится описание формата файла
картотеки, чтобы программисты могли писать
свои собственные программы, использующие
картотеку как входные данные или програм-
мы, генерирующие файлы картотеки.
Описание. Картотека состоит из произволь-
ного (ограниченного размером памяти) числа
карточек, расположенных последовательно.
Каждая карточка состоит из заголовка (до
30 символов с ограничителем ASCII 13 (CR))
и информации (до 18 строк, не более чем по
30 символов; каждая строка ограничена сим-
волом CR, если ее длина меньше 30 симво-
лов). За информацией расположен маркер
конца карточки - символ ASCII 1.
В индексах и информации могут быть исполь-
зованы не все символы.
Могут применяться:
- символы ASCII (коды 32-127);
- символы русского, украинского и белорус-
ского алфавитов применяемой 866-ой кодо-
вой страницы символов.
Остальные символы зарезервированы или име-
ют специальное значение в ВК CardFile и не
могут быть использованы.
Импорт текстов из Speccy Write
------------------------------------------
Файл текстового редактора Speccy Write
легко может быть преобразован в формат CF.
Для этого текст должен быть отформатирован
под ширину строки 29 символов, с левым по-
лем шириной 0. После этого в конце каждой
предполагаемой карточки припомощи команды
редактора ext I вставьте маркер конца -
символ с кодом 1 (это будет символ в верх-
нем ряду таблицы, первый непустой, считая
слева). Убедитесь, что длина индексов не
более 30 разрешенных символов. Убедитесь,
что файл не содержит запрещенных в ВК Card
File символов (см. "Формат файла картоте-
ки").
Логически связанные картотеки
------------------------------------------
С версии 2.0 CardFile поддерживает концеп-
цию связанных картотек.
Очень часто картотека так разрастается,
что не помещается в один файл, и в то же
время в ней можно выделить тематически
обособленные наборы карточек.
Метод логической связки предусматривает
следующее:
1. Картотека делится на более мелкие, каж-
дая со своим тематическим направлением
(например, картотека "Мой телефонный спра-
вочник" делится на несколько: "Мои друзья
в Киеве", "Местные телефоны", "Коды между-
городней телефонной связи" и так далее).
2. В полученных файлах добавляются взаим-
ные LINK-связи. Это делается следующим об-
разом: в картотеку вносится карточка с ин-
дексом, отражающим содержимое связываемого
файла, а в info-поле этой карточки вносит-
ся такая строка: @имя_файла. Причем она
должна быть вписана строго с первого сим-
вола поля info.
3. В результате мы получили в этой карто-
теке карточку, символизирующую другую кар-
тотеку. Чтобы "попасть" в ту картотеку,
нужно всего лишь сделать LINK-карточку ак-
тивной и выполнить команду Card | link.
Указанный в карточке файл будет загружен с
текущего устройства. Поскольку фактически
делается операция открытия файла File |
Open..., то в случае ненахождения указан-
ного файла он будет полагаться "новым" и
буфер будет очищен, чтобы Вы могли начать
создавать файл.
4. Аналогично, в том, связываемом файле
можно создать обратную ссылку для возврата
в этот файл.
5. В первой строке поля info в LINK-кар-
точке, кроме указанной выше @-записи ниче-
го не должно быть.
Особые замечания
------------------------------------------
* Загрузчик CardFile частично распознает
наличие TR-DOS: если она подключена и инс-
таллирована, загрузчик полагает, что Card-
File грузится с диска, иначе - с ленты.
Если TR-DOS подключена, а Вы хотите загру-
зить CardFile с ленты, дайте предваритель-
но команду NEW.
* При использовании компьютера Selto Rotor
Computer V03 необходимо изменить внутренюю
таблицу скен-кодов на специальную (см.
"Смена раскладки клавиатуры").
* Чтобы перенести CardFile в TR-DOS, прос-
то перепишите все ее файлы на диск; чтобы
работать с ней в ленточном варианте, запи-
шите файлы на ленту в таком порядке:
Program: CARDFILE
Bytes: CF.ЕХЕ
Program: CF.BAS
* С версии 2.1Ь CardFile полностью перех-
ватывает все сообщения TR-DOS, включая
"Read only" и "Disk еггог". Эти сообщения
выводятся совершенно обычным образом, но в
специальном окне CardFile.
* На 128 кВ компьютерах CardFile рекомен-
дуется запускать в режиме совместимости
(48 кВ).
* С версии 2.5 фиксирование курсора на ин-
дексе или первой строке информации карточ-
ки в режиме card позволяет быстро войти в
режим редактирования соответствующего по-
ля.
Вот и все... По любым вопросам Вы можете
обратиться к автору, написав по адресу:
257010 Украина, Черкассы-10, а/я 1529.
Курицыну Борису Александровичу.
Автор будет рад услышать критические заме-
чания или предложения по совершенствованию
ВК CardFile.
Other articles: