Символ, который идет перед кавычкой, нужно оставить в неприкосновенности. Поэтому в поле замены вводится обращение к выражению в строке поиска — $1.
Теперь закрывающая кавычка. После нее могут идти: пробел, запятая, точка, закрывающая скобка, вопросительный знак, восклицательный знак, дефис, символ «многоточие».
Конструкция поиска:
(S)"([s!.)-…,?:;])
Конструкция замены:
$1»$2
Здесь используется два выражения. Первое означает, что перед закрывающей кавычкой должен идти НЕ пробел. Второе выражение содержит перечисление символов, которые могут идти после нее. Соответственно, в конструкции замены идет обращение к двум выражениям.
Напоследлк должен заострить ваше внимание, что в режиме исходника FB Editor регулярные выражения функционируют несколько по-другому. В частности, не получается использовать метасимвол «|», некорректно обрабатываются перечни, содержащие кириллицу.
§ 4.6 Использование скриптов
Автор FB Editor предусмотрел расширение его возможностей при помощи Java Script.
Вызываются они из меню ToolsScripts[скрипт].
Первые девять скриптов можно вызывать клавишами Ctrl+1…9.
Документации, разумеется, не предусмотрено никакой. Во всем придется разбираться самостоятельно.
Поэтому, перед тем, как заняться написанием скриптов, необходимо проштудировать хороший справочник по функциям JavaScript с примерами.
Очень подробный справочник входит в состав MSDN Library. Много полезной информации можно найти также на W3SCHOOLS.
Из бумажных изданий могу посоветовать «JavaScript и DHTML: сборник рецептов» Дэнни Гудмана (доступна в Сети) и «Полный справочник по JavaScript» Фрица Шнайдера. Обе эти книги издавались на русском языке.
Если английский язык для вас не проблема, а средство общения, то на уже упоминавшемся www.flazx.com вы сможете бесплатно скачать множество руководств по JavaScript. Среди них хочу особо выделить JavaScript: The Definitive Guide. Книга выдержала уже пять изданий.
Компактный и информативный справочник по JavaScript входил в состав редактора FB Writer (см. ниже)
В газетной публикации я приводил два простеньких скрипта собственного изготовления.
Здесь такой необходимости нет. Как пример, рекомендую посмотреть скрипты, написанные для FB Writer, моим земляком, известным на форуме FictionBook.org под ником Sclex.
Правда, тут есть одно маленькое, но очень вредное «но». Механически перенести наработки Sclex-а под FBE 1.0 не получится. Они жестко заточены под FB Writer и совместимый с ним FB Editor 2.0.
§ 4.7 Баги с нами!
Хотя FB Editor — довольно надежная и функциональная программа, он все-таки содержит несколько неприятных ошибок.
Вот, к примеру, символ по внешнему виду похожий на тире «—» (десятичный код 173) в режиме WYSIWYG не виден. Вернее виден, только если приходится на конец строки. Приходится переключаться в режим Source и вылавливать эти символы-паразиты.
Бывает так, что при попытке сохранить книгу выскакивает окошко со следующим сообщением:
Code: 8004005 [Unspecified error]
Source: msxml4.dll
Description: Unexpected NameSpace parameter
Это, скорее всего, где-то образовалась ошибочная конструкция наподобие section/EM/cite/EM.
Паниковать не надо. Внимательно пройдитесь по всей книге, обращая особое внимания на цитаты и стихи. Обнаружив цитату или стихи, разорванные на отдельные абзацы, аккуратно соберите их в один элемент.
Такое также случается, если вы копировали через буфер содержимое html, в котором содержались картинки. Найдите эти картинки и удалите.
Также небезопасно превращать абзац в subtitle и тут же отменять это действие. Есть риск, что программа «захлопнется». Разумеется, ничего при этом не сохранив.
При редактировании, если рядом оказыывается два и более подряд идущих пробелов FB Editor автоматически конвертирует второй и последующие пробелы в неразрывные. Вообще-то это никакой не баг, а особенность, связанная с тем, что FB Editor использует DHTML, но все равно очень раздражает.
§ 4.8 Дальнейшее развитие редактора
C начала 2007 года вокруг FB Editor наблюдается весьма активное шевеление. Не совсем, откровенно говоря, здоровое.
За модернизацию FB Editor взялись сразу два человека.
Автор, известный на форуме Fictionbook.org, как Pilgrim, доработал FB Editor, так, чтобы он поддерживал все новшества FictionBook 2.1. К сожалению, энтузиазма у него хватило ненадолго.
Алексей Савельев (Alex Saveliev), выпустивший свой продукт под названием FB Writer, напротив, сделал упор на функциональность программы. Обеспечена совместимость с IE 7.0, исправлено несколько особенно вредных ошибок, доработан интерфейс, появилось много новых «фич». Особого внимания и, чего кривить душой, восхищения, заслуживают написанные под FB Writer скрипты, значительно облегчающие и ускоряющие подготовку книги. Начиная с версии 2.0 была реализована даже проверка правописания.
Все было бы хорошо, но Алекс потребовал за свою работу деньги. Мало того, последние версии редактора требуют для запуска подключение к Internet, что автоматически вычеркнуло эту софтину из списка программ, которые я использую.
Кончилось все это печально, но закономерно. Какой-то доброхот взял, да и взломал FB Writer. После чего разобиженный автор закрыл проект.
К счастью, еще до этого грустного финала совершенствованием FB Editor-а занялся программист компании «ЛитРес». За основу были взяты исходники Pilgrim-a. На данный момент этот продукт является, хотя и весьма сырой, но самой многообещающей разработкой в этой области.
Увы, возможно он таковым и останется. Распространение FB Editor признано вредным для коммерческих интересов «ЛитРес»-а. Посему, продукт, едва доведенный до стадии «работоспособная бета», переводится в разряд «закрытый инструмент для своих». В общем, в очередной раз бабло побеждает зло.
§ 4.9 Альтернативные средства редактирования
Говоря о редактировании FB2-книг, несправедливо было бы не упомянуть об разработках, существующих, так сказать, в параллельной плоскости.
Book Designer 4.0
В первую очередь, это Book Designer В. Войцеховича и его специальная версия для FB2 — FB Designer.
Программа BookDesigner была разработана как средство для конвертации книг из любого формата в любой же формат. И она полностью отвечает своему назначению. Если требуется сконвертировать книгу в экзотический формат или, наоборот, извлечь из оного, то здесь альтернативы Book Designer просто нет.
Проблема, в том, что BookDesigner совершенно не рассчитан на серьезное редактирование книг. Открыть файл, быстро разметить его и сохранить в новом формате — с этим он справляется великолепно. И функция Book Cleaner (пакетный запуск регулярных выражений) также достойна всяческих похвал. Но когда приходится долго и вдумчиво редактировать книги, то выясняется, что BookDesigner в этом не силен.
Не совсем корректно работает функция Undo. Не поддерживается элемент cite. То, что отображается на экране, не всегда соответствует реальному содержимому файла. Даже сохранение работает совсем не так, как мы привыкли.
На язык так и просятся слова незабвенного товарища Огурцова: «Все молодцы, работа проделана большая, но так дело не пойдет!»
А давно обещанный Book Designer 5.0 до сих пор существует в виде обновления.
FB Writer
Как уже было сказано, FB Writer, начиная с версии 1.2 перестал быть бесплатным. Мало того, даже пробную версию редактора запустить без подключения к Internet стало невозможно. А после того, как появилось «рекальство», отучающее программу от этих пагубных привычек, автор свернул проект и удалил страничку FB Writer.
Однако, благодаря доброй воле одного из участников форума Fictionbook.org, FB Writer и «клистир» к нему, стали вновь доступны в Сети. Естественно, упускать такую возможность познакомиться с интересной софтинкой поближе было бы неразумно.
Любители копирайта и уязвленный автор могут не беспокоиться. И программа и взломка были использованы мной исключительно в ознакомительных целях. Поелику не имею привычки работать на машине, подключенной к Сети. Кроме того, я уже говорил, что FB Editor 1.0 меня вполне устраивает, а когда (и если!) FBE 2.0 будет доведен до ума, то перейду на него.
Итак, приступим.
Для работы FB Writer требуется Windows семейства NT, MSXML, Script 5.6 и, внимание, Microsoft Net# Framework 2.0.
Кто не в курсе, FB Writer представляет собой переработанный и улучшенный FB Editor. Переработанный настолько качественно и толково, что
Первое, что бросается в глаза при первом запуске программы — внешний вид ее стал заметно лучше. Автор не стал устраивать авангардные эксперименты с большими иконками, он просто дополнил строгий интерфейс FBE 1.0 новыми элементами.
Особенно эффектно стало выглядеть дерево структуры документа. Добавленные пиктограммы значительно «оживили» его.
Заметно увеличился список горячих клавиш, в частности появились комбинации для набора типографских кавычек-«елочек».