Tl;dr;
Как правильно создать привязку в docbook? и есть ли способ сделать привязку видимой в Writer?
Задний план
Я пытаюсь разделить документацию, которая раньше находилась в отдельных open office
документах, на более мелкие asciidoc
документы, которые оба включены в основной документ открытого офиса, а также преобразованы в один или оба из html
& pdf
. У меня это в основном работает. Я использую asciidoctor
для создания HTML. asciidoctor-pdf
для создания PDF-файлов и комбинацию asciidoctor и pandoc
для создания файлов .odt. Я также попробовал реализовать asciidoc
на python, но обнаружил, что интерфейс менее удобен.
Очевидно, что переключение между asciidoc и odt невозможно. Это своего рода слияние, когда мастер-документ обрабатывается текстами, но в него включены части контента, которые могут быть созданы независимо (например, страницы руководства - на самом деле, это один из нескольких вариантов использования).
asciidoc в html:
asciidoctor -b html5 foo.adoc -o foo.html
asciidoc в pdf:
asciidoctor-pdf -b pdf foo.adoc -o foo.pdf
asciidoc в odt
asciidoctor -b docbook foo.adoc -o foo.docbook
pandoc --base-header-level=3 -V date:"" -V title:"" -f docbook foo.docbook -o foo.odt
С помощью pandoc мне нужно обнулить дату и заголовок и установить желаемый уровень заголовка для вставки раздела в качестве дополнительного усложнения.
Я вставляю полученный .odt в основной документ, используя insert section
внутри открытого офиса. Обратите внимание, что основной документ не является мастер-документом, так как я не смог найти способ создания мастер-документа без автоматического разделения файла по границам h1.
У меня есть две основные проблемы, которые нужно решить с помощью этой настройки. Я хотел бы добавить заголовки в документ asciidoc как перекрестные ссылки, а также создать для них записи в алфавитном указателе (на самом деле первого заголовка будет достаточно). Есть ли способ сделать это? Маркеры индекса в asciidoc не приводят к созданию записей в файле .odt.
Я могу делать перекрестные ссылки на контент во вставленном разделе, используя «вставить ссылку / заголовок» и ссылаясь на заголовок с уникальным именем. Однако всякий раз, когда я использую «обновить все», эти перекрестные ссылки становятся недействительными. Они отображаются как «Ошибка: источник ссылки не найден».
[В отдельной заметке я также хотел бы иметь способ автоматически находить неработающие перекрестные ссылки]
В настоящее время я использую libreoffice - Версия: 4.3.7.2
Я не против переключения версии или вкусов (например, apache), если одна из них ведет себя лучше, чем другая.
Я не уверен, находится ли ответ в части цепочки asciidoc или docbook. Я бы принял ответ, который автоматически вставляет индексную запись в начало вставленного раздела (вверху файла .adoc / docbook).
Я также готов изменить свой набор инструментов на что-то, что будет работать. Например, я попробовал бэкэнд asciidoc-odt и столкнулся с https://github.com/dagwieers/asciidoc-odf/issues/47, не внушающий доверия. Используя asciidoc-odt, мне не нужно создавать промежуточный файл docbook. Однако я все еще не могу заставить появиться якорь.
Я могу получить макрос для создания привязки, но в настоящее время я не понял, как запустить макрос из командной строки.