Все мои 5-летние попытки найти программера для создания поисковой системы файл-эхи провалились. Максимальный прорыв был достигнут в январе 2001 года: Hиколай Бурмистров написал на WinFox программу для домашней коллекции файлов BIBLIO, но Hиколай так и не добил ее, то есть Biblio хотя и работает, но с кучей ошибок и нестыковок.
Пришлось браться самому, причем попутно с созданием поисковой системы – осваивать новый для меня язык Delphi-6 (позже – Delphi-7). Посему – что получилось, то и получилось. Лучшего на сегодняшний день все равно пока не существует (если не считать программы Nebula v 2.01 на DOS-Clarion v.2, с которой структура базы и некоторые функции были честно «слизаны», но у Nebula – свои заморочки).
BOOK_Library Delphi-7 for Win32…
Попутно напомню, что помимо Book_Library существуют и другие программы аналогичного или похожего назначения, или выполняющие отдельные функции этой системы:
The BCatSQL for WIN32 (BCAT29.RAR авт. А.Дроздов) – Программа сортировки поступлений фэхи BOOK;
Домашняя библиотека – BIBLIO WinFOX for Win32 (BIBLIO01.RAR авт. Н.Бурмисторов) – аналог BOOK_Libray;
BkTosser v.0.8.2 beta (авт. Николай Козлов, Иван Рудаков) – программа, облегчающая сортировку поступлений фэхи BOOK;
BOOKSCAN (???) Программа для разборки приходящих книг фэхи BOOK;
BookView 1.06 (BV106RUS.RAR, ???) – Программа для чтения электронных книг.
ExLibris 1.3.2 (EXLIBRIS.ZIP) – Library maintenance utility (программа учета книг (бумажных));
FCUTTER (авт. Евгений Жирнов) – Пуржератор для фэхи BOOK v.1.00 beta
GUSEWM01.ZIP (авт. Максим Гусев) – Программа для индексации документов и поиска по произвольному слову.
BOOKSEER (???) – система, похожая по назначению на BOOK_Library, но без привязки к фидошным файл-эхам;
MARC 3.74 – Библиотечный катологизатор книг.
NEBULA Clarion 2.01 for DOS (Игорь Загуменнов, Ольга Воронова) – аналог BOOK_Libray, но без автоматической подгрузки книг в базу;
Программа рапространяется вместе с уже закачанной в нее информацией по прошедшим по файл-эхе BOOK книгам (базой).
Периодически по этой же файл-эхе пролетают (будут пролетать) дополнения для доподгрузки базы (хотя теоретически программ файлы знакомых авторов или «знакомых жанров» сможет разгребать самостоятельно – без подсказок из вне).
На сегодняшний день работают следующие функции:
Программа BOOK_Libray рапространяется вместе с уже закачанной в нее информацией по прошедшим о файл-эхе BOOK книгам (базой). Периодически по этой же файл-эхе пролетают (будут пролетать) дополнения для доподгрузки базы (хотя теоретически программ файлы знакомых авторов или «знакомых жанров» сможет разгребать самостоятельно – без подсказок из вне).
После распаковки WinRAR-архива в корень диска (со всеми подкаталогами) в каталоге BOOK_LIB должны появиться:
Book_Lib.exe – собственно программа;
Book_Lib.ini, Book_TMP.ini, BookHTTP.ini, Ganr_BBS.ini, Welcome.ini – конфигурационные файлы;
BOOK0001.BMP, BOOK0002.BMP и r-error.bmp;
Подкаталог BASE – с базой коллекции;
Возможно файлы TXT и DOC – с описанием системы.
Перед первым запуском необходимо настроить конфигурационные файлы:
Book_ Lib.ini – основной настроечный файл, в нем прописаны:
диск, на котором располагается коллекция файлов (переменная Disk),
основной каталог коллекции (переменная FilesBOOK), название файла с комментариями, которые будут вставлены в начало генерируемого листинга всех книг (переменная Welcome),
путь к фидошному каталогу, где накапливаются файлы, приходящие по файл-эхам (откуда брать новые файлы для сортировки – переменная FilesBBS).
Book_ TMP.ini – вспомогательный настроечный файл. В нем прописаны:
каталог для обработки новых файлов, где будет проходить собственно сама сортировка (FilesTMP) (у переменной FilesTMP есть один глюк, с которым пока не знаю – как справится: путь, прописанный в этой переменной нельзя начинать со слова BOOK, то есть
FilesTMP D:\BOOK_LIB\TMPBOOK\ – приведет к сбоям в работе программы, аналогичный эффект даст
FilesTMP D:\BOOKTMP\
С чем это связано – увы, пока не разобрался (хотя само слово BOOK активно используется при сортировке, но непосредственно FilesTMP вроде бы там никаким боком не задействована, и тем не менее...
Каталог для распаковки архивов (переменная FilesArc);
Каталог для переноса дублей (переменная FilesDupe);
Каталог для копирования найденных файлов (переменная FilesCopy).
BookHTTP.INI – вспомогательный настроечный файл Интернет-библиотек, он нужен только в том случае, если программ Book_Library будет использоваться для скачивания новых, не имеющихся в коллекции, файлов из 10 заранее настроенных сайтов. Впрочем, этот блок в целом – еще в работе и в распространяемой версии (кажется) пока отключен.
Ganr_BBS.ini – этот файл определяет названия жанровых каталогов и комментарий к ним для листинга всех файлов. Поскольку жанровый классификатор частично встроен в саму программу – менять имеющиеся в нем настройки – не желательно.
Структура самой базы:
Catalog.DAT – основная база коллекции с описанием всех архивов книг (k01-k0f – ключи для нее);
Auth.DAT – база авторов;
Cicle.DAT – база циклов;
Class1.DAT – классификаторы жанров 1 уровня;
Class2.DAT – классификаторы жанров 2 уровня;
Class3.DAT – классификаторы жанров 3 уровня;
ClassG.DAT – соответствие жанров и кодов в описаниях (FILES.BBS)
USER.DAT – база пометок читателя.
Alexandr Tovchigrechko 2:5020/113.71 писал(а):
2) Hе подскажешь в какой базе ты деpжишь subj ( \base\*.dat )? Я думал в Clarion, но Clarion_2.01_DOS их не опознал. Я пpосто хотел, в случае, необходимости, экспоpтиpовать их в access или sqlite.
Все базы используют способ взаимных ссылок друг на друга, причем номер записи соотвествует порядковому номеру этой строки в самом файле (для ускорения обращения к записью). Поэтому произвольная замена, удаление или вставка строк в любом DAT-файле иным, чем Book_Library инструментом – может превести порче всей базы в целом.
Структура «хранилища» книг перешла в наследство от поисково-справочной системы Nebula (Clarion 2.01 for DOS) и заключается в следующем:
Чтобы не хранить файлы в разных местах – есть общий каталог всей коллекции книг в целом в данном случае он называется BOOK, название непринципиально, его можно назвать как угодно (BIBLIO, BOOKTECA или еще как-то), но тогда следует поправить настроечные INI-файлы.
Внутри BOOK располагаются жанровые или тематические подкаталоги, в данном случае:
BOEVIK.102 – Боевики, вестерны, приключения, пираты, диверсии
DETEKTIV.101- Детективы
DIAFILM.904 – Диафильмы
ENCIKL.4 – Словари, учебники, справочники, (кроме радиотехн. и электроники)
FANTASY.105 – Отечественные фэнзины, фэнтези, ужастики, сказки (русск.)
FANTASY.106 – Заруб. фэнзины, фэнтези, ужастики, сказки (переводные)
GURNAL.5 – Статьи и рассказы из журналов
HUD-LIT.107 – Отеч.художеств.лит. (кроме фант., любовн.романов и детективов)
HUD-LIT.108 – Заруб.художеств.лит. (кроме фант., любовн.романов и детективов)
KRITIKA.7 – Критика, интервью, полемика
KULINAR.605 – Кулинария, рецепты, пособия
LOVE.109 – Любовные, любовно-исторические романы
MEDIC.604 – Книги по медицине
NF.103 – Фантастика сов. и русскояз. авт.
NF.104 – Зарубежная фантастика
OBEC.110 – Сететевые и начинающие писатели
POPULAR.6 – Hаучная и научно-популярная литература (кроме медицины и радиоэлектроники)
RADIO.602 – Электроника: учебники, справочники, пособия
RELIG.3 – Философия, психология, религия, мистика, культы, неопозн.явления
RUKOVOD.606 – Пособия самодельщикам: авто, мебель, дача, мех.устройства
STIHI.2 – Стихи, песни, поэмы
UMOR.111 – Юмор
VNEGANR.8 – Прочее (политика, история, бизнес, досуг и прочее)
Цифры в конце названия каталогов помогают программе определить их жанровую принадлежность (они «увязаны» с принятым в ФИДО классификатором жанров для книжных файл-эх).
Поэтому новый тематический каталог можно заводить с любым именем, но расширение – следует определить по списку принятых жанров (Приложение 1).
Внутри жанровых расположены авторские каталоги, например,
Содержимое папки D:\BOOK\DETEKTIV.101
AKUNIN – Борис Акунин
ALESHINA – Светлана Алешина
ARNO – Макс Арно
BEREZIN – Михаил Березин
И т.д.
Кроме авторских есть и общие каталоги для файлов-одиночек:
BOOK или BOOK.ALL (BOOK.B-A, BOOK.ELK, BOOK.SHM, BOOK.SPR…)
Если у некоего автора всего 1 текст – нет смысла заводить для него отдельный каталог, такие тексты и собираются в обще-жанровый BOOK с любым расширением (хотя тут расширение тоже имеет некоторый смысл – ALL – все подряд, B-A – без автора, TLS – сказки, CNN – сериал про Конана-воина, SHM – только радиосхемы и т.д.).
Нельзя хранить файлы вне авторских каталогов, ибо программа будет пытаться в них «войти»
Каждый авторский каталог снабжен описателем лежащих в нем файлов – FILES.BBS. В его структуре есть одно правило (чтобы программа могла читать этот файл) –
Первая строка – с 10-той позиции имя [отчество] знак табуляции Фамилия автора [через запятую – соавтор, если он есть]. Знак табуляции всегда стоит перед первой фамилией (даже в том случае, когда у автора одно имя – Гомер, например)
(у BOOK. – 1 строка не принципиальна).
Вторая строка – пустая.
С третьей строки начинается собственно само описание файлов. Каждый файл – с новой строки, сначала название файла, а с 20-той позиции – название произведения, сериала, формата файла, жанра.
Например:
AKUNIB01.HA Левиафан
AKUNIB02.HA Пелагия и белый бульдог (Пелагия #1)
AKUNIB03.HA Алтын-Толобас
…..
VORGAR01.HA Победитель всегда прав (Муму) [1.02.02]
VORGAR02.HA Из любви к искусству (Муму) [1.02.02]
Для каталогов BOOK.[любое расширение] – перед названием произведения стоят имя-фамилия автора (точка-пробел или пробел-кавычка) название произведения:
AJDING01.RAR Г.Айдинов «Каменщик» (Рассказ, «Искатель», 1968/6)
ALIEN01.ARJ Глеб Киреев «Чужие» по фильму Ридли Скотта Alien N 1
ALIEN02.ARJ Мария Цветкова. Новеллизация по фильму Д.Камерона («ALIENS» N 2)
Если по какой-либо причине имя-фамилия автора в авторском каталоге отсутствует – программа впишет туда название каталога.
При расширении коллекции следует помнить, что авторские каталоги внутри жанровых – можно наращивать до полутора-двух тысяч, а вот количество самих жанровых ограничено числом 32.
Блок «Система поиска»
Поисковый блок включается клавишей «Система поиска» на главном меню или аналогичным пунктом верхнего меню.
Основные варианты поисковой системы перечислены в поисковом меню:

– по тематике
– по авторам
– по сериалам
– по слову в названии
– по читательским заметкам
– по названию файла

«Художественная проза (ББК 84)"
«Поэзия (стихи и песни) (ББК 84)"
«Философия, мистика, оккультизм (ББК 86–88)"
«Словари, справочники (ББК 92)"
«Периодические издания (ББК 95)"
«Hаучн., технич.и уч. лит., метод.пособия»
«Библиографические пособия (ББК 91)"
«Прочие тексты, не относящиеся к др. разделам»
«Картинки и фотографии»
«Нотные партитуры»
(примечание, для некоторых жанров дан номер по Библиотечно-библиографической классификации – ББК, приводимой в выходных данных книг, чтобы проще было классифицировать файл при оцифровке. К сожалению, ББК ориентирован на научную и производственную литературу, а для художественных жанров – не приемлем, поэтому в программе частично использована государственная классификация, частично – уже сложившиеcя названия среди читателей, но не отраженные в ББК)
«Детективы»
«Боевики, триллеры, приключения»
«Отечественная фантастика»
«Переводная фантастика»
«Отечественная фэнтези»
«Зарубежная фэнтези»
«Отечественная проза»
«Зарубежная проза»
«Любовный роман»
«Творчество начинающих и фидошников»
«Сатира и юмор»
Внутри каждый жанр подразделяется на поджанры, например, «Детективы»:

Остальное
Детектив-стрелялка
Детский
Иронический детектив
Классический детектив (Одиночка: Холмс, Мэгре, Пуаро и пр.)
Милицейский роман (полиция)
Политический детектив
Про войну (разведка на войне)
Шпионский роман
На иностранных языках
Файл, который изначально трудно было классифицировать (ясно, что детектив, но какой именно?), или даже «лениво» указать при постинге в фэху – при автоматической подгрузке базы попадает в поджанр «Остальное». Это следует учитывать, если вдруг какая-то книга не была найдена в соответствующем заведомо известном «правильном» поджанре.
Полный список уже заведенных классификаций жанров приведен в приложении 1
После прохода трехступенчатого выбора поджанров программа подбирает все файлы, имеющие такую классификацию и выводит их на экран.
Файлы отсортированы по алфавиту НАЗВАНИЙ произведений.

Двойной клик мышкой или <Enter> на выбранной строчке открывает окно с информацией по выбранному файлу.

Здесь представлено название, автор (соавтор), жанр, сериал (если есть) и номер данного произведения в сериале, путь к файлу, название самого файла, дата создания, размер (в архиве), пометка читателя, анонс (если есть). А также информирует – существует ли этот файл по указанному в базе пути (т.е. сами файлы лежат на диске компьютера или на вставленном в CDROM диске, правильно ли настроены INI-файлы).
Название, пометку читателя и анонс – можно править, остальная информация заблокирована (если нужно править иное – для этого предназначен блок «Изменение и дополнение базы»).
Предполагается, что основная работа с найденным файлом (чтение, печать, редактирование) будет проводиться в других программах (WinWord), тем не менее программа имеет встроенные просмотрщик и простенький редактор.
Верхнее меню представляет также возможности:
– (F2) распаковать найденный файл (если он присутствует) в каталог, указанный в Book_ TMP.ini;
– (F3) быстро просмотреть первые 100 строк (только если файл в формате TXT). При быстром просмотре, после показа первых 100 строк нажатие <Esc> свернет это окно, а <Пробел> распакует файл до конца;
– (F4) распаковать для редактирования и печати;
– (F5) скопировать файл в архиве в каталог, указанный в Book_ TMP.ini.
Быстрый просмотрщик:

Теоретически – только для беглово просмотра при поиске нужной книжки. Никаких дополнительных удобств он не предполагает.
Редактор:

Достаточно простой редактор, способен выполнять лишь основные функции – несложная правка текста, копирование, перенос, удаление отдельных кусков, изменение вида и размера шрифтов, печать, сохранить как...
В перспективе сюда будут добавлены конверторы из разных кодировок, форматирование абзацев и другие функции, нужные при работе с разными текстами. Пока эта часть отсутствует.
При выборе этого пункта в окно выводится список всех заведенных в базе авторов, отсортированных в алфавитном порядке (по фамилиям).

Если начать набирать на клавиатуре фамилию (с большой буквы, ибо регистр тут значащий), курсор автоматически будет прыгать на ближайшее слово с такими буквами из общего списка. Стрелками «Вверх»-»Вниз» или мышкой установить курсор на нужную фамилию. Двойной клик мышкой, нажатие <Enter> или кнопка на панели «Выбрать» запустит механизм подбора всех произведений данного автора. И выведет их в окне «Список найденного по фамилии»:
(процесс подбора занимает несколько секунд – чуть больше, чем все остальные способы поиска)

Произведения отсортированы по алфавиту названий.
Двойной клик на нужном произведении открывает окно «Информация по найденному файлу», уже рассмотренному в пункте «Поиск по тематике» (все возможности – теже самые).
Для поисковой системы поиск по автору или соавтору – равнозначен.
Полная аналогия, как и при поиске по авторам. Только вместо фамилий – заведенные сериалы книг, отсортированные по алфавиту. При наборе название регистр значение НЕ ИМЕЕТ.

Двойной клик на выбранном сериале, или <Enter> выводят окно со списком произведений, включенных в данный сериал.

Далее – выводится уже знакомое окно «Информация по найденному файлу».

Ключевое слово для поиска среди названий можно вводить в любом регистре. Единственное ограничение – в слове должно быть более 5 букв, иначе программ ничего искать не будет.

Далее – выводится уже знакомое окно «Информация по найденному файлу».
При поиске тем или иным способом (по жанру, автору и т.д.) в блоке «Информация по найденному файлу» пользователь может пометить запись в базе любой пометкой (их можно создавать самому в блоке «Управления базой», общее количество ограничено числом 32 тыс.штук).
А уже помеченные файлы можно легко найти в этом блоке.

Далее – все, как в блоке поиска по сериалам.

При выборе этого режима поиска на экран выводятся файлы, отсортированные по своим названиям.

первая часть окна – название файла;
вторая – автор;
третья – название произведения.
Значок [x] на разделителе соответствует наличию анонса в базе у данного произведения.
Для ускорения работы файлы выводятся не все сразу, а по одной тысяче. При наборе первых трех-пяти букв названия нужно подтвердить выбор нажатием <Enter> и в окно будет загружена тысяча, в которой должен находиться искомый файл.

Движком в правой части окна двигается список выведенной тысячи, клавиши «/\" и "\/" меняют всю тысячу на следующую или предыдущую.
Поскольку в системе применяются лишь латинские названия файлов, при попытке ввести кирилические буквы может выскочить сообщение об ошибке:

Двойной клик на выбранной записи выводит окно «Информация по найденному файлу».
Информацию по найденному файлу можно дополнить анонсом (аннотацией) произведения.
Анонсы можно заводить двумя способами – вручную и из файла.
Набивка текста аннотаций к произведению вручную производится в блоках «Информация по найденному файлу» (через «Система поиска»)

или «Модификация записи» («Изменение и дополнение базы» – «Ведение основной базы» – название файла – «Изменить»)

Курсор переводится в поле анонсов, делается нужная запись, затем – клавиша «Сохранить».
Единственное ограничение – текст аннотации может иметь не более 15 строк по 80 символов в каждой.


По окончании подгрузки программа сообщит общее количество подгруженных анонсов, количество дублей (если на какой-то файл анонс уже имеется, то программа его пропускает), и количество ненайденных файлов (с перечнем).
Файл для подгрузки имеет такую структуру:
-->8--
*******************************************************************
PERUMN26.RAR
сказочно-фантастической трилогии Дж. Р. Р. Толкиена «Властелин колец».
через три столетия. Над Средиземьем вновь сгущаются силы Тьмы; три друга -
гном Торин, хоббит Фолко Брендизайк и человек Рогволд – отважно противостоят
злу.
*******************************************************************
DUMAA79.RAR
себя повести и новеллы Дюма, отражающие его интерес к оккультным наукам, к
различного рода таинственным и не поддающимся рациональному объяснению
явлениям. В эти произведения входят также отрывки мемуарного и очеркового
характера.
лишь повесть «Фонтене-о-Роз».
публикуются по изданию: Bruxelles, Meline, Cans et Cie, 1849.
-->8--
Черта из более чем 60-ти звездочек отделяет один анонс от другого. В каждой первой строке очередного анонса – название файла, к которому он относится (разумеется, этот файл уже должен быть в базе), затем пустая строка и следом – текст анонса (не более 15 строк и не более 80 знаков в каждой строке).
Кодировка файла ANONS.TXT – DOS
Готовый подгрузочный файл с анонсами иногда вкладывается в еженедельно (по понедельникам) проходящий по фэхе BOOK архив BOOK_L??.RAR с дополнениями к базе. Кроме того, его можно изготовить вручную в файл-менеджере (FAR, Norton, Volcov), копируя анонсы непосредственно из текстов (если там есть аннотация).
Кроме того, среди утилит в комплекте к программе есть ANONS.EXE, «выдергивающий» анонсы из текстов лежащих в том же каталоге архивов RAR, а если в архиве вместо TXT лежит файл DJVU или PDF, копируется содержимое File_id.Diz. Разумеется, перед подгрузкой сформированного этой программой ANONS.TXT следует сначала отредактировать его в любом редакторе (просмотреть и удалить лишнюю информацию).
Верхнее меню – «Изменение базы» – «Выгрузка базы (форм.BAS-TXT)" вызывает блок конвертации всей базы в формат DOS-TXT (для возможной переподгрузки в другие системы поиска). Отметить «Анонсы» и начать выгрузку.

Сформированный файл (ANONS.TXT) по формату будет полностью соответсвовать всем требованиям для дальнейшей подгрузки у новой (без анонсов) базы. Его можно подредактировать любым текстовым DOS-редактором (но главное – не менять структуру).
Впрочем, если этот отредактированный файл попытаться загрузить в ту же базу, то ничего не получится. Программа сообщит, что такие анонсы уже существуют и откажется их прогружать. Чтобы обнулить базу, нужно выгрузить основной файл (CATALOG.TXT), переименовать его в CATALOG.BAS и загрузить через блок «Изменение и дополнение базы» – «Полная переподгрузка из BAS» – отметить «Основной каталог» – «Старт». В этом случае основная база будет переподгружена, ключевые файлы переформированы, а ANONS.DAT – удален.
После переподгрузки основного файла можно загрузить файл с анонсами «Изменение и дополнение базы» – «Анонсы из ANONS.TXT»
Блок «Обслуживание файлов»
Программ Book_Library заточена под фидошные книжные файл-эхоконференции. Да и как иначе? В тексте обычно от нескольких сот до пары миллионов всяких букв и слов, как определить – где там автор, где название книги или сериала? У файлов с сайта Мошкова первой строкой идет автор и название (но на той же строке около полукилобайта служебных символов). На Альдебаране – наоборот, в первой строке идет название, а на 3 или даже 5 строке – автор (причем имя и фамилия могут стоять в разном порядке). У Луки Бомануара – первым идет сериал. Ну и так далее. Как определить – какое слово считать именем автора, какое – фамилией? Где начинается и заканчивается название произведение или сериала? Для программы задача невыполнимая. Именно поэтому в основу для книжных фэх Фидо заложен строгий принцип наименования файлов и структуры описания в файле FILES.BBS (поскольку этот файл формируется у всех подписчиков фидошным софтом, то задача создания FILES.BBS и не ставилась, за ненадобностью).
А структура такова (это забито в правила фэхи):
взято из BOOK.RUL (правила фэхи BOOK)
5. Большую часть проходящих по файлэхе текстов обрабатывает специально обученная этому программа Book_Lib, поэтому название файла и дескрипшин в TIC и FILES.BBS должны удоволетворят определенным условиям.
Hазвание файла из 8 знаков: 6 прописных (заглавных) латинских букв (пять – фамилия автора, шестая – имя), два последних знака – сквозной порядковый номер файла. Hапример,
SIDORP01.RAR – Петр P Сидорчук SIDOR 01 файл.
Если фамилия меньше 5 букв – разницу дополнять знаком _" (BLON_G01.RAR – Жорж Блон).
Описание (дескрипишн в .tic):
первая часть – Имя Фамилия ( через пробел) или Инициалы.Фамилия (точка без пробела).
вторая часть – название произведения. Для 01 файла название заключается в кавычки (для последующих это не принципиально).
третья часть (не обязательная) – название сериала или цикла – в круглых скобках и кавычках, после знака # – номер данной книги в сериале, например:
MAY__K01.RAR Карл Май «Виннету» ("Виннету" #1) [1.02.03]
четвертая часть – жанровая принадлежность в квадратных скобках
[1.02.03], где цифровой код классификатора выбирается из перечня жанровых классификаторов по Приложению 1 (в конце текста «Правил...»).
В архив с текстом вкладывается FILE_ID.DIZ, в котором первая строка повторяет строчку Desc из. TIC, а последующие несут любую другую служебную информацию о файле (включая выходные данные книги/сайта, ник оцифровщика, анонс и т.д.)
Помните, файлы не удоволетворяющие этим условиям – будут отбракованы для ручной обработки, и потому могут вовсе не попасть в поисковые системы фэхи BOOK.
конец цитаты из BOOK.RUL
Как в FILES.BBS программ отличает имя от фамилии? Очень просто, имя идет первым, а сразу после фамилии стоит сочетание – либо «пробел-кавычка», либо «точка-пробел». А если точка без пробела или пробел без точки, то перед ней – инициалы или имя (И.И.Иванов., Иван Иванов., Иван И.Иванов. ) Поэтому на словах «И. Иванов» – программ ошибется обязательно.
Кто может предложить другой алгоритм, чтобы можно было вытащить имя-фамилию-название – с любого сайта? Покажите, обязательно вставлю в программу.
Поэтому проще всего подгружать файлы в базу программы, прошедшие по фидошным файл-эхам. Существует 3 режима:
Полуавтоматическая подгрузка книг в базу из файл-эх без файлов обновления;
Полуавтоматическая подгрузка книг в базу из файл-эх с файлами обновления базы;
Ручной режим подгрузки любых файлов.
Режим полуавтоматической подгрузки предполагает, что новинки книг, пришедшие по файл-эхам:
1. Лежат (скопом) в одном каталоге, путь к которому прописан в Book_ Lib.ini (переменная FilesBBS). Причем общее количество не должно превышать 1000 файлов на одну подгрузки (ибо буфер не безразмерный). А идеально – 200–600 файлов (от недельного до месячного трафика всех фидошных книжных файл-эхоконференций).
2. В том же каталоге имеется файл описаний – FILES.BBS, в котором перечислены архивы всех книжек со строкой, содержащей
NAMEFILE.RAR АВТОР. НАЗВАНИЕ ПРОИЗВЕДЕНИЯ («СЕРИАЛ» #НОМЕР) [КОД ЖАНРА]
(кодировка DOS – т.е. 866 таблица)
Вначале любым файл-менеджером (без Book_Library) проверяем сам каталог, из которого программа будет черпать новые файлы.
Наиболее удобно пользоваться FAR-ом:

Затем убеждаемся, что FILES.BBS не содержит явных ошибок и пропусков в описаниях.

Убедившись, что тут – все в порядке, запускаем BOOK_Library
Сначала появляется информация о текущей версии программы, номере и дате последнего обновления
Затем – основной экран программы.
Далее «Обслуживание файлов» – «Сортировка новинок»
На экране возникает окно «Настройка сортировки файлов»
Вот тут пользователь должен определиться: будет ли он вести собственную базу файлов, либо доверится «эталону», для которого еженедельно по основной фидошной фэхе BOOK идут дополнения к базе (записи авторов, циклов и собственно – файлов, проскочивших на предыдущей неделе).
Если поставить «галочку» в позиции «Подгрузка только файлов, пришедших в обновлениях BOOK_L», то те книги, записей о которых пока нет в базе – останутся нетронутыми, а в обработку и раскидывание по подкаталогам пойдет только то, что в базе уже имеется (прогружено из BOOK_L, но об этом – в следующей главе).
В противном случае – программа обработает и раскидает ВСЕ файлы, найдет новых авторов и предложит прогрузить их базу. Если пользователь согласится, то начнутся расхождения (по нумерации авторов и файлов) и в дальнейшем – BOOK_L прогружать нельзя (записи могут лечь «внахлест»).
Дополнительная «поднастройка» этого режима – куда переносить узнанные файлы, сразу в коллекцию или в некий временный каталог (чтобы предварительно еще раз просмотреть – что куда разложено)?
Второй режим – «Галочка» снята, появилось сообщение «Подгружаем все необработанные файлы».
Поднастройка второго режима заключается лишь в указании програмее – что делать с файлом в общем каталоге /BOOK/. Предположим, среди обновлений появился второй файл некого автора и потому для него будет создан отдельный авторский каталог. Так что с первым то делать? Переносить его туда же или оставить как есть?
Собственно, эта поднастройка нужна лишь для случая, когда коллекция лежит на CD, и потому переносы просто невозможны.
Далее рассмотрим самый сложный случай – Режим обработки ВСЕХ файлов.
Когда с режимами определились – нажимаем саму «Сортировку»
Программа определила, что в «файл-эхном» каталоге 104 файла (FILES.BBS, BOOK.RUL и DESCRIPT.ION – она не учитывает) и начала сортировку.
Архивы, уже имеющихся в базе авторов (по названию файла), программа определяет сразу и переносит их во временный каталог TMPBOOK (определенный в настроечном Book_ TMP.ini), а описание для него читает из FILES.BBS.
Эта группа отражается в окне «Узнанные файлы».
Вторая категория – тексты авторов, которые пока не представлены в базе. Принадлежность к тому или иному жанру определяется по жанровому классификатору из того же FILES.BBS. Файлы-одиночки помещаются в общие подкаталоги \BOOK.ALL\, а если книг несколько, для них создается авторский подкаталог в названии которого (окончание) присутсвует. NEW. Желательно после первого прогона предварительной обработки – их переименовать таким образом, чтобы новые каталоги не пересекались по названиям с уже имеющимися в коллекции.
Вторая группа отражается в окне «Узнанные жанры»
Если встретится неизвестный файл, не имеющий аналогов в базе и без описания в FILES.BBS, программа оставит его без движения и отразит в окне «Неизвестные файлы».
Дупы, то есть файлы, описание которых уже имеется в базе – переносятся не в TMPBOOK, а в каталог DUPE. Впрочем, структура подкаталогов – как это записано в базе – полностью сохраняется. В дальнейшем, подгружающий должен сам решить – что делать с этими файлами:
1. если запись о файле есть (получена из обновлений), а самого файла действительно нет – переписать его в основную коллекцию;
2. если дубль – действительно ошибочный, то есть архив с таким названием существует, но в нем совсем другое произведение – исправить название архива (и поправить запись в FILES.BBS) и прогрузить заново;
3. если же в дубле – исправленная версия текста (или полная версия, против имеющегося в коллекции фрагмента) – то перезаписать его поверх старого.
Эта категория отражается в окне «Дубли»
Самое нижнее окно содержит список файлов тех авторов, у которых до момента подгрузки в базе числилось всего одно произведение (лежавших в общих подкаталогах \BOOK.ALL\). С приходом нового текста – создается авторский подкаталог, для новых файлов, а если в предыдущем окне была включена соответствующая настройка, то заодно и основной базе создается аналогичный подкаталог, куда переносится старый файл.
По окончании сортировки появится предупреждение об этом. А программа возвратится в исходный режим – Меню «Обслуживание файлов».
В этот момент целесообразно запустить один раз «Передобработку отсортированного» – чтобы BOOK_Library привела в порядок вновь сформированные FILES.BBS в авторских и общих подкаталогах, и тут же выйти из этого блока.

А вслед за этим – вновь вернуться в FAR (или другой файл-менеджер) – посмотреть, чего же там программа насортировала.
Как видим, каталог, откуда черпались архивы – пуст, а вот временный TMPBOOK – совсем наоборот: в нем появились жанровые каталоги, внутри которых авторские и общие подкаталоги.

Перед преобработкой отсортированного желательно пройтись по каждому новому авторсому подкаталогу и заглянуть в FILES.BBS, в поисках возможных ошибок.
Вот и первая ошибка: в базе автор Борис Алмазов значится без отчества, а в исходном FILES.BBS – он был с отчеством «Александрович». Программа такое слово не знает и потому – оставила без изменений. Если его не удалить – слово «Александрович» войдет в название произведения.

Прибиваем «Александрович» в редакторе FAR-а, а вот – выносить ли его в шапку (и соответствующим образом поправить запись в базе – раздел «Авторы» – на усмотрение пользователя).

Следущий пункт – тот самый каталог. NEW, о котором предупреждала программа в режиме сортировки.
Каталог Павла Ивановича Мельников-Печерского. Переименовываем его в MELNIKV.P-I.

Еще одна ошибка – в базе Геннадий Прашкевич, а с фэхой пришел Г.Прашкевич. Удаляем лишнюю букву.

Итак, в FAR-е все исправили, возвращаемся в BOOK_Library. Режим «Передобр. отсортированного»

Просматриваем окно «Новые авторы», если грубых ошибок не замечено: имена не «уехали» в фамилии, а в «фамилиях» – один человек, а не группа из двух-трех (такое бывает, если авторов в FILES.BBS больше двух), то жмем клавишу «Включить авторов»

Точно также просматриваем окно с сериалами, если и там все в порядке – нажимаем «Включить циклы»

Одновременно формируются подгрузочные файлы AUTH.NEW и CICLE.NEW (для загрузки обновления на ДРУГИХ копиях программы)

Таким образом, новые авторы и названия новых сериалов – уже попали в основную базу. Теперь необходимо еще раз нажать «Старт», чтобы программа сформировала подгрузочный файл для основной базы – с реальными (новыми) авторами и сериалами для каждой записи.
Вот теперь, после получение такого сообщения – можно запускать режим «Просмотр и подгрузка»
(Если по каким-либо причинам подгружать новинки в базу не требуется, но нужен подгрузочный файл для каталога – нажимаем клавишу «Изготовление подгрузочного файла». Во втором случае – записи о новых файлах в базу не попадут)
Итоговое окно, перед подгрузкой в основную базу – список всех новых файлов с авторами и названиями. Если замечена какая-либо ошибка – двойным кликом мышки можно войти в режим исправления записи и поправить эту ошибку.

Клавиша «Подгрузить все» – загружает эти записи в базу и формирует подгрузочный файл CATALOG.NEW (для загрузки обновления на ДРУГИХ копиях программы. Для пользователей – одиночек файлы NEW можно прибить или использовать как своего рода – лог прогруженного).

Появление предупреждающего окна свидетельствует о корректном обновлении базы программы. Теперь необходимо перейти в файл-менеджер FAR и покаталожно перенести все новинки из временного каталога TMPBOOK в основную коллекцию.
При переносе файлы FILES.BBS нужно ДОПИСЫВАТЬ. Это важно, иначе можно прибить предыдущие записи по старым файлам.

Завершающий аккорд – составление сводного листинга обновленной коллекции.

«Обслуживание файлов» – «Создание файл-листинга»
Если в процессе создания файл-листинга встретится файл без описания в соответствующем FILES.BBS, то программа сообщет об этом в окне «Авторские каталоги» и текстовом файле ERROR.TXT, который сформируется в основном каталоге программы \BOOK_LIB\.
Еженедельно по фэхе BOOK (понедельник/вторник) проскакивает файл обновления базы для программы BOOK_Library. Он называется BOOK_L00.RAR (где 00 – порядковый номер обновления).
Подгрузка новых авторов, циклов и собственно – описания файлов:

Прогружать их нужно именно в той последовательности, как они перенумерованы, иначе может возникнуть путаница с принадлежностью файлов к определенным авторам и появится вот такое предупреждение:

После успешной подгрузки обновлений – начинаем выполнять весь ритуал, описанный в 1 разделе этой главы – вплоть до режима «Сортировка новинок» (его тоже отрабатываем, только нужно поставить «галочку» «Подгрузка обновлений из BOOK_L), а вот последующие действия – нужно пропустить, поскольку все новинки будут разложены по своим подкаталогам – либо в самой коллекции (и программ автоматически допишет FILES.BBS), либо во вспомогательном каталоге DUPE\. В последнем случае необходимо FAR-ом нежно перенести файлы в основную коллекцию (аккуратно, дописывая FILES.BBS).
По заранее скачанным файлам недостающих книг
1. скачать новый files.bbs со всей стурктурой
http://www.the-ebook.org/e107/download.php?view.23
2. развернуть этот архив поверх имеющейся библиотеки, будут добавлены новые каталоги
3. скачанные файлы разместить в каталог, прописанный в файле book_lib.ini в переменной FilesBBS. Проверить наличие в этом каталоге файла files.bbs
4. последовательная закачка обновлений в библиотеку. Внимание – перескакивать через номера обновлений нельзя – только последовательно.
4.1. требуемое обновление описано в файле bookl_xx.rar, который должен лежать вместе с приехавшими. Разархивируем этот файл в каталог с программой book-lib
4.2. запустить book-lib
4.3. выполнить пункт меню «Обслуживание файлов» – «Подгрузка обратот.файлов» кнопка внизу «начать подгрузку»
4.4. подгрузить файлы-классификаторы (CLASS?.BAS). Выполнить пункт меню
«Изменения и дополнения базы» – «Полная перезагрузка из BAS» – отметить «Жанр», «Поджанр», «Соотв. Жанров» и нажать <Еnter>
4.5. Сортировка новинок. Выполнить пункт меню:
«Обслуживание файлов» – «Сортировка новинок». Настройки по умолчанию менять не нужно. В результате в каталоге DUPE будет создана структура библиотеки с новыми книжками.
4.6. Копируем новые книжки поверх старой базы данных. Лучше пользоваться Far-ом и командой append когда предлагается скопировать имеющиеся files.bbs.
4.7. Проверка отсутствующих файлов. Выполнить пункт меню
«Обслуживание файлов» – «Сравнение базы с файлами». Полученные файлы не были скачаны, не попали в базу и их нужно где-то брать.
4.8. Новые книжки уже можно искать, просматривать распаковывать.
4.9. закрыть book-lib
4.10. убрать файлы с расширением *.bak, *.bas и файл anons.txt
4.11. перейти к следующему обновлению – начать с п.4.1.
Эта часть документации пока в работе
$erge писал(а):
BookLib не создаёт FILES.BBS и File_Id.Diz, и следовательно, без этих файлов книга в базу не попадёт. Поэтому для простых смертных, качающих книжки с обычных сайтов, в которых нет файлов File_Id.Diz, автоматическая подгрузка книг в базу невозможна. Даже полу-автоматическая. :) Без файла File_Id.Diz ничего не работает.
Возможна. Файлы то не с неба берутся – и попадают в базу. Я ведь писал эту программу именно для того, чтобы себе же и облегчить работу по разгребанию книжек. То есть раньше (до написания BOOK_Lib) у меня обработку недельного постинга уходило
Alexandr Tovchigrechko 2:5020/113.71 писал(а):
1) Собиpаюсь в subj затолкать стаpые файлы, пpошедшие давно по фэхе, а я их все давно пеpеаpхивиpовал в rar и тепеpь они не pаспознаются.
К комплекту программы BOOK_Library добавлено несколько утилит для работы с текстами (конверторы), архиваторы, просмотрщики DJVU, DOS-русификаторы.
Этот набор лежит в каталоге BOOK_LIB\UTIL\
errortxt_update.rar Утилита офлайновой закачки новых книг с ftp по списку отсутствующего из файла ошибок book-lib
1. Художественная проза (ББК 84)
1.02. Боевики, триллеры, приключения
1.03. Отечественная фантастика
1.04. Переводная фантастика
1.05. Отечественная фэнтези
1.06. Зарубежная фэнтези
1.07. Отечественная проза
1.08. Зарубежная проза
1.09. Любовный роман
1.10. Творчество начинающих и фидошников
1.11. Сатира и юмор
2.Поэзия (стихи и песни) (ББК 84)
2.02. Песни
2.03. Басни
2.04. Драматургия в стихах
3.Философия, мистика, оккультизм
3.02. Философия (ББК 87)
3.03. Психология (ББК 88)
3.04. Необъяснимые явления и факты
4. Словари, справочники (ББК 92)
4.02. Словари (ББК 92.1)
5. Журналы и альманахи (ББК 95.2)
5.02. Журналы Интернета
5.03. Красная Бурда
5.04. Страж-птица
5.05. Литературный журнал 200
5.06. альманах Та сторона
5.07. Черный Баклан
5.08. Внутренняя информационная сводка КЛФ МГУ
5.09. Книжное обозрение
5.10. OldNews
5.11. Почтовый ящик
5.12. Курьер SF
5.13. Общественно-политические
5.14. Чудеса и приключения
5.15. Юный Техник
5.16. Наука и жизнь
5.17. Веселые картинки
5.18. Детские журналы
5.19. Научно-технические журналы
5.20. Юмористические журналы
5.21. Юридические журналы
5.22. Физкультура и спорт
6. Hаучная, техническая и уч. лит., метод.пособия
6.02. Техника (ББК 3)
6.03. Научно-популярные издания
6.04. Здравоохранение. Медицинские науки (ББК 5)
6.05. Кулинария (ББК 36)
6.06. Руководства самодельщикам
7. Библиографические пособия (ББК 91)
7.02. Критика
7.03. Рецензии
7.04. Полемика, публицистика
7.05. Комментарии
7.06. Воспоминания о писателях
8. Прочие тексты, не относящиеся к др. разделам
8.02. Бизнес
8.03. Публицистика
8.04. Москва и москвоведение
8.05. Исторические экскурсы
8.06. Юридическая литература
8.07. Прочее
8.08. Досуг, развлечения
9. Картинки и фотографии
9.02. Картинки
9.03. Карты и атласы
9.04. Диафильмы