Шрифт:
Интервал:
Закладка:
Поиск по набору регэкспов
Скрипт ищет большое число ошибок – в первую очередь, ошибок распознавания (разрыв слов через тире, неверные сочетания букв, смесь букв цифр, латиница в кириллице, предложения без точки и т. п.). Скрипт, работает с места курсора и останавливается на подозрительном (по его мнению месте) и в левом нижнем углу окна программы появляется подсказка, о какой ошибке может идти речь.
В каждом случае Вам придется решать, ошибка это или нет. Исправления производятся вручную в тексте. После этого запустите скрипт дальше.
Если вы заметили повторяющуюся ошибку, вы сами можете добавить ее в регэксп. Для этого откройте скрипт в текстовом редакторе (например: Notepad) и добавьте свои строки по типу:
tagRegExp("(?‹![а-яё])гак(?![а-яё])","i","Найдено: слово "гак" ("так" с опечаткой).");
tagRegExp("(?‹![а-яё])эго(?![а-яё])","i","Найдено: слово "эго" ("это" с опечаткой).");
Если какой-то регэксп вам кажется лишним, "отключите" его. Для этого откройте скрипт в текстовом редакторе, найдите нужное сочетание, по которому работает поиск, и поставьте в начале строки два слэша: //.
//tagRegExp("(?‹![а-яё])эго(?![а-яё])","i","Найдено: слово "эго" ("это" с опечаткой).").
Добавление сносок (примечаний и комментариев) v2.6
Как известно, людям, готовящим книги, иногда бывает нужно добавить сноску среди уже существующих, при этом требуется ручная работа, т. к. регэкспы не могут выполнять требуемые арифметические действия.
Что делает скрипт.
1. Добавляет body примечаний, если его нет.
2. Добавляет заголовок body примечаний, если его нет. Если есть – оставляет без изменений.
3. Изменяет ID секций примечаний.
4. Изменяет заголовки секций примечаний.
5. Меняет адреса как сносок, так и простых ссылок, которые указывают на секции примечаний.
6. Меняет текст сносок (у простых ссылок остается как было).
7. Добавляет новую секцию примечаний.
8. Добавляет новую сноску с правильными адресом и текстом.
Как использовать скрипт? Нужно стать на позицию в тексте, где должна появиться ссылка на примечание, и запустить скрипт. Остальное делается автоматически.
Детали алгоритма. Номер вставляемого примечания определяется по номеру примечания, расположенного перед вставляемым. Остальные не анализируются. Т. е. если вставляем после сноски, связанной с третьей секцией боди примечаний, новая сноска получит номер четыре и будет связана с четвертой секцией в боди примечаний. Если вставлять новую сноску после сноски, которая не связана ни с какой секцией в теле примечаний, скрипт сообщит об ошибке.
Новые адреса и тексты ссылок генерируются не по порядку их размещения в тексте, а вычисляются по тому, с какими секциями связаны ссылки. Другими словами, связь ссылки и секции сохраняется независимо от порядка их расположения.
Секции примечаний нумеруются с единицы для первой секции.
Заголовки в секции примечаний добавляются независимо от исходного их наличия/отсутствия.
Ограничения. Скрипт не понимает вложенные (более одного уровня вложения) секции в боди примечаний. В случае, если встречаются секции второго или более уровня вложения, скрипт выдаст предупреждающее сообщение и прервет свою работу.
Настройки. В начале файла скрипта расположены определения констант, которые задают шаблоны для называния заголовков, для текста ссылок и пр. Соответственно при необходимости их можно поменять. Макрос %N задает номер секции примечания, остальное трактуется как просто текст.
В данный набор скриптов входят следующие подверсии:
1. Добавление сноски;
2. Обработка сносок;
3. Добавление сноски со вводом;
4. Добавление сноски с переходом;
5. Добавление последней сноски;
6. Добавление последней сноски со вводом;
7. Добавление последней сноски с переходом;
8. Унификация комментария;
9. Унификация комментариев;
10. Добавление комментария со вводом;
11. Добавление комментария с переходом;
12. Добавление последнего комментария;
13. Добавление последнего комментария со вводом;
14. Добавление последнего комментария с переходом;
15. Унификация сносок (с удалением неиспользуемых секций сносок);
16. Унификация комментариев (с удалением неиспользуемых секций комментариев);
Видно, что есть скрипты, которые работают с так называемыми "сносками", а есть которые с "комментариями". Что тут имеется в виду? А имеется тут в виду то, что можно работать одновременно с двумя потоками сносок, различающихся вот чем. Во-первых, "сноски" располагаются в ‹body name="notes"›, а "комментарии" – в ‹body name="comments"›. Во-вторых, текст ссылок-"комментариев" скрипт выделяет тегом ‹sup›, чего не происходит со "сносками". Это нужно для того, чтобы "комментарии" в тех читалках, где нет специальной их поддержки, отображались как верхний индекс. Третье – по умолчанию ссылка "сноски" имеет такой вид: [1], в то время как ссылки "комментариев" оформляются следующим образом: {1}. То есть для "комментариев" используются фигурные скобки, а не квадратные, таким образом можно зрительно различать тип сноски при чтении книги. Четвертое различие состоит в том, что по умолчанию id секций "сносок" имеют вид i_1, а "комментариев" – c_1. Соответственно этому различаются и адреса ссылок.
Скрипты 1 и 8 ("Добавление сноски" и "Добавление комментария") добавляют простую сноску или комментарий, и больше ничего не делают – курсор оказывается в позиции сразу за добавленной ссылкой сноски.
Скрипты 2 и 9 ("Обработка сносок/комментариев") отличаются тем, что не производят добавление сноски или комментария, но при этом производят перенумерацию и всяческую обработку уже имеющихся сносок/комментариев.
Скрипты 3, 6, 10 и 13 ("…со вводом") позволяют после генерации пустой сноски в соответствующем боди ввести ее текст в появившемся окошке. Можно использовать различные теги, как fb2- (‹emphasis›, ‹strong› и пр.) так и теги html (‹b›, ‹i› и пр.). html-теги тоже будут преобразованы в fb2-теги, но их может быть удобнее использовать вследствие краткости, и, следовательно, большей быстроты их набора на клавиатуре. После того, как текст будет введен в окошке и сноска создана, курсор окажется в позиции сразу за свежесозданной ссылкой сноски.
Скрипты 4, 7, 11 и 14 ("…с переходом") работают так, что совершаются все перенумерации, создается сноска с пустым телом, а потом в начало этого тела сноски (но после заголовка) перемещается курсор. Бывает удобно вставить текст сноски в буфер обмена, потом запустить скрипт "…с переходом" и сделать paste из буфера.
Скрипты 6, 7, 13 и 14 ("Добавление *последней* сноски/комментария…") позволяют добавлять сноску только ниже по документу, чем расположена последняя сноска из уже имеющихся. Данные скрипты не производят перенумерацию ссылок и секций (т. к. при добавлении *последней* сноски в этом нет нужды), за счет чего происходит ускорение работы скрипта. Детали работы этого скрипта, я, честно говоря, сам восстанавливаю в памяти не без труда, если еще чего вспомню, то напишу.
Скрипты 15 и 16 ("Унификация… с удалением неиспользуемых секций…") производят унификацию сносок либо комментариев, при этом секции сносок или комментариев, на которые нет ссылок, удаляются.
Примечания и комментарии из скобок v2.2
Бывает так, что в книге примечания сделаны прямо посреди основного текста книги, а не вынесены в отдельные секции в ‹body name="notes"›. В таком случае может быть удобней не переносить примечания в ‹body name="notes"› по одному, а пометить начало и конец каждого примечания (посреди текста книги) последовательностью определенных символов (такая последовательность в рамках письменного и устного общения насчет данного скрипта условно называется "скобкой"), а потом сгенерировать все (корректно оформленные) сноски сразу. Именно для такого случая и сделан данный набор скриптов.
В архиве имеются следующие скрипты:
1. Примечания из [];
2. Примечания из {};
3. Примечания из [!!];
4. Примечания из [~ ~];
5. Примечания из скобок, заданных регэкспами;
6. Примечания из скобок, заданных простым текстом;
7. Комментарии из [];
8. Комментарии из {};
9. Комментарии из [!!];
10. Комментарии из [~ ~]
11. Комментарии из скобок, заданных регэкспами;
12. Комментарии из скобок, заданных простым текстом;
Про разницу между "Примечаниями" и "Комментариями" можно прочитать в описании скрипта "Добавление сносок и примечаний".
Скрипты 1-4 и 7-10 используют жестко заданные "скобки", какие именно – указано в названиях скриптов (сначала открывающая, а затем закрывающая).
Скрипты 5 и 11 ("…из скобок заданных регэкспами") позволяют задать отдельно регэксп для открывающей и закрывающей "скобок", и по этим регэкспам скрипт ищет скобки и извлекает сноски.
- FictionBook Editor V 2.6 Руководство - Izekbis - Руководства
- Заставьте данные говорить. Как сделать бизнес-дашборд в Excel. Руководство по визуализации данных - Алексей Сергеевич Колоколов - Прочая околокомпьтерная литература / Менеджмент и кадры / Руководства
- Электрика на даче своими руками. Полное руководство - Юрий Морозов - Руководства
- Экскурсоведение. Учебник - Борис Емельянов - Руководства
- Перепелиная ферма. Руководство по уходу, содержанию и разведению - Марина Голубева - Руководства