KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программирование » Вадим Кузнецов - Описание работы пакета OOoFBTools Создание книг FB2

Вадим Кузнецов - Описание работы пакета OOoFBTools Создание книг FB2

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Вадим Кузнецов, "Описание работы пакета OOoFBTools Создание книг FB2" бесплатно, без регистрации.
Перейти на страницу:

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

‹[: alnum: ]+[)}]({[,!?…»”"":;«“][: alpha: ]+|‹[: alpha: ]+[: digit: ]+|‹[: digit: ]+[: alpha: ]+

При выключенной опции «Искать между цифрами»:

‹[: alpha: ]+[)}]({[,!?…»”"":;«“][: alpha: ]+|‹[: alpha: ]+[: digit: ]+|‹[: digit: ]+[: alpha: ]+

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


III.2. Обработка выделенных абзацев (обрыв абзаца или строки)

Часто требуется не автоматическая обработка текста, а ручная некоторых фрагментов. Данный набор инструментов может работать как с одним выделенным фрагментом текста, так и с несколькими выделенными областями текста. Если нет ни одного выделенного фрагмента, то инструменты могут обработать весь документ (появляется соответствующее окно с вопросом).

Выделять можно только Текст. Инструменты не работают с Врезками и Таблицами. Например, есть текст с обрывом абзацев (показаны скрытые символы):

В этом тексте есть и обрыв абзаца, и обрыв строки (тэг ‹BR› в html-файлах).

Делаем следующее:

1. Выделяем те строки, где есть разрыв строки:

Запускаем инструменты Ручная обработка абзацев, выбираем Режим обработки: Разрыв строки (n) и Тип обработки: Склейка в 1 абзац (Замена обрыва строки n на 1 пробел). После нажатия Обработать, получили следующее:

Теперь выделяем все строки, разорванные абзацев, причем в каждое выделение должны попасть только те строки, которые должны составить один целый абзац:

Для инструмента Ручная обработка абзацев, выбираем Режим обработки: Обрыв абзаца (¶) и Тип обработки: Склейка в 1 абзац (Замена обрыва строки n на 1 пробел). После нажатия Обработать, получили следующее:

Что и требовалось. Разорванные строки 2-х абзаце мы склеили, каждые в свой абзац. Разобраться с остальными Типами обработки этих инструментов не сложно.


III.3. Инструменты работы с примечаниями, сносками и гиперссылками

Пожалуй, самым нудным и утомительным в вычитке текста является обработка и создание сносок из примечаний. Это – постоянные «прыжки» по тексту – с места текста примечания, вырезая его текст в буфер – на «его» номер в главе, удаление этого номера, вставки сноски, потом вставка из буфера примечания… И так – «до умопомрачения».

Набор инструментов для работы со сносками созданы как раз, чтобы облегчить этот процесс в полуавтоматическом режиме. Доступ к ним – либо через меню OooFBTools, либо – через панель инструментов Генерация сносок или гиперссылок (иконки со временем могут измениться):

1. Генерация Сносок или Гиперссылок на примечания.

2. Вставка закладки для списка примечаний.

3. Вставка закладки для главы с № примечаний.

4. Преобразование № примечаний в верхнем индексе по шаблону.

5. Удаление всех служебных закладок.

6. Интерактивное преобразование номеров примечаний в верхнем индексе по шаблону

7. Нумерация выделенных абзацев.


И инструмент Генерация сносок или гиперссылок и инструмент Преобразование № примечаний в верхнем индексе по шаблону активно используют работу с буфером обмена (Cut, Paste) и реальным положением видимого курсора экрана! Поэтому, пока программа не завершит работу, ничего не делайте ни с мышкой, ни с клавиатурой!

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

Инструменты Генерация сносок или гиперссылок и Нумерация выделенных абзацев работают только с текстом документа. Текстовые Врезки – игнорируются, т. к. OOoWrither не позволяет в них вставлять сноски. Таблицы тоже игнорируются (из-за сложности проверки выхода курсора за пределы Таблицы и некорректности получаемого результата).

Теперь – подробнее о каждом инструменте.

1. Генерация сносок или гиперссылок

Механизм работы Генератора Сносок и Генератора Гиперссылок одинаков. Различие состоит в том, что Генератор сносок перемещает текст примечания в сгенерированную сноску, а Генератор гиперссылок формирует из соответствующего места книги гиперссылку на нужное примечание, ничего не делая с самим текстом примечания.

Переключение между ними осуществляется с помощью «залипающих» кнопок.

А. Генератор сносок

Есть 2 основных режима генерации сносок: Простой и Сложный.

1.1. Простой режим генерация сносок (по шаблону)

Генерация сносок в этом режиме возможно в выделенных фрагментах текста (их может быть сколько угодно), либо во всем документе.

При запуске генерации сносок, если нет ни одного выделения в тексте, появится окно с вопросом, обрабатывать ли весь текст? Если нажать кнопку OK, то будет обработан весь документ. Если – Отмена, то работа остановится, и вы можете выделить нужные области текста. Если выделения есть, то программа ничего не запрашивает, а производит обработку всех этих выделений.

В каких случаях используется простой режим генерации сносок?

Очень часто источник цитаты или мысли, на которую ссылается автор книги, находится в скобках (круглых, квадратных и т. д.). А это как раз и есть «кандидат» на сноски.

Например, есть текст книги (Рыбаков, Язычество древней Руси):

К предметам, связанным с бытом волхвов, следует отнести находки неолитических кремневых орудий и стрел. Такая находка была сделана В. А. Городцовым в вятическом кургане у с. Барыбина. Исследователь сопоставил её с обычаем хоронить колдунов с "громовыми стрелами". (Городцов В. А. Археология. Каменный период. М., 1923, с. 77-78.) Обычно под громовыми стрелами подразумевают фульгуриты, но вполне вероятно, что к ним причисляли и изделия каменного века. Подобные находки есть и в других местах. Особый интерес представляет кремневый наконечник копья, найденный в Новгороде в слоях рубежа XIII-XIV вв. Кремень оправлен в серебро с чернью. М. В. Седова определяет дом, в котором найден этот талисман, как дом волхва, так как в его фундаменте зарыты 4 детских черепа. (Седова М. В. Амулет из древнего Новгорода. – Сов. археология, 1957, № 4, рис. 1. с. 166-167.) Наличие православного восьмиконечного креста на серебряной оправе говорит о любопытном синкретизме представлений этого колдуна-знахаря.

Запустив диалог Генерации сносок, выбираем «Простой режим генерации сносок (по шаблону)». А в нем – из выпадающего списка – шаблон для текста сносок (в нашем случае – это текст внутри круглых скобках). Нажав кнопку Сгенерировать мы получаем текст, где вместо круглых скобок стоит очередная сноска, а в тексте сноски – текст из круглых скобок:

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

1). Круглые скобки вокруг авторов книг заменить на фигурные, или другие идентификаторы из списка шаблона.

2). Выделять только те фрагменты книги, где в скобках находятся действительно кандидаты на сноски, и не выделять те, которые являются уточнениями и т. д., хотя и находятся тоже в таких же скобках. Тогда они и не будут преобразованы в сноски.

Вот пример текста (в нем, для иллюстрации, желтым маркером выделены кандидаты на сноски, а оранжевым – уточнения, которые не должны быть обработаны, как сноски):

Значит, нам надо курсором выделить только кандидатов на сноски (на картинке – желтый маркер), используя клавишу Ctrl:

Точность выделения не имеет значения – главное – чтобы наши идентификаторы (в данном случае круглые скобки) попали в это выделение.

Теперь, после генерации сносок в Простом режиме генерирования получаем следующее:

Как видим, все получилось, как надо.

Использование выделений в тексте довольно удобно, когда не надо обрабатывать весь документ. Идеально было бы, если бы все идентификаторы кандидатов на сноски отличались бы от круглых или квадратных скобок. Тогда можно просто обработать весь документ, не думая о том, чтобы под обработку не попали и уточнения в круглых скобках, или страницы оригинала в квадратных скобках.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*