Создаю свой стиль "Код", основной особенностью которого является шрифт "Courier New" (для автоматического применения тэга code, выделяю АБЗАЦ, применяю созданный Стиль абзаца "Код", в итоге получается следующее:
Нужно чтобы было так (пробелы вместо подчеркивания):
/
Это простая программа на С#.
Назовем ее Example.cs. /
using System;
class Example
{ _// Любая программа на C# начинается с вызова метола Main(). static void Main() _{ __Console.WriteLine("Простая программа на С#."); }
}
А получается так (тэг code применяется построчно, но начинается не с начала строки, а с тэга P):
<p><code>/</code></p>
<p><code>Это простая программа на С#.</code></p>
<p><code>Назовем ее Example.cs.</code></p>
<p><code>/</code></p>
<p><code>using System;</code></p>
<p><code>class Example</code></p>
<p><code>{</code></p>
<p> <code>// Любая программа на C# начинается с вызова метола Main().</code></p>
<p> <code>static void Main()</code></p>
<p> <code>{</code></p>
<p> <code>Console.WriteLine("Простая программа на С#.");</code></p>
<p> <code>}</code></p>
<p><code>}</code></p>
Т.е. мы видим код без отступов!
/
Это простая программа на С#.
Назовем ее Example.cs./
using System;
class Example
{
// Любая программа на C# начинается с вызова метола Main().
static void Main()
{
Console.WriteLine("Простая программа на С#.");
}
}
Last edit: fb2_user 2014-12-26
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Вы пытаетесь применить формат вне его изначальной целевой ниши.
В рамках XML данные элементы форматирования (отступы) задаются стилями.
Но будьте готовы к встрече со второй необходимой частью решения: поддержкой используемых Вами элементов прикладным ПО (программами для чтения, стили ЕМНИП поддерживает только CoolReader3, но в как минимум базовой прошивке современных читалок он уже не встречается). И здесь Вас ждёт много «приятнейших» сюрпризов.
Потому я бы рекомендовал начать с знакомства с областью и условиями реализуемости фичи автоматического масштабирования. Например в третьей версии сочинения тов. Львовского.
И ориентироваться на родной формат оптимального решения задачи (dvi).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Starikov Sergey, я не имею возможности читать книги, отформатированные "по фэншую", т.к. большая часть книг с технической литературой максимум что есть - это отсканированная и распознанная в FineReader книжка и хорошо, если она будет в fb2, а не pdf. Так что я буду продолжать использовать CoolReader ;)
P.S. Интересно, а авторы sourceforge discussion не пробовали сделать для форматирования текста что-то подобное phpBB? :)))
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Проблема в том, что не–фэньшуй в данном случае (распознали и засунули в xml) как правило означает потерю форматирования (и смыслов, заложенных в оное) вообще.
Впрочем, и без форматирования, сделав шаг в сторону можно обнаружить целые залежи граблей (Вам показать… ИВНР «разработчиков», типа кириллических (!) шрифтов, на вопрос о количестве букв для полной поддержки только русской кириллицы гордо отвечающих — 33?).
Если хотите убедиться на личном опыте — оформите в fb2 пару страниц pgfmanual ☺
Да нет. Я про то, что в IDE редакторах отступы форматируются именно с помощью пробелов (ну максимум с помощью табов), но не стилями. Поэтому для тэга CODE форматирование отступов происходит ТОЛЬКО с помощью пробелов. Хотите проверить, откройте Visual Studio, и скопируйте текст в блокнот. Если фрагмент кода без ошибок, IntelliSense его выравнивает с помощью пробелов.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
в IDE редакторах отступы форматируются именно с помощью пробелов (ну максимум с помощью табов), но не стилями.
Логично и закономерно.
Ибо требования компилляторов/интерпретаторов.
А вот проверить по предлагаемому сценария не могу. ☺
Аж два раза.
Во-первых, потому что разработчик не обременяет себя поддержкой моей платформы.
Во-вторых в силу несогласия с условиями лицензионного «соглашения».
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Есть мнение, что в качестве примера интересен не результат (.fb2), а исходник (.odt).
Насколько я представляю логику, после задания стиля форматирования надо применить корректор текста.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Но разве корректор текста не запускается автоиматически при экспорте в fb2?
Нужто он (корректор текста) при каком-то сценарии должен делать это? Корректор реализует операцию обработки текста (предполагающую как минимум контроль результатов). Экспорт же является только преобразованием предварительно оформленного документа.
Потому я и говорю не недопустимости стремления к халяве и уклонения в потреблядство: решение логичное и очевидное с точки зрения разработчика (или пользователя тем или иным образом причастного к разработке) может представляться внезапным для простопользователя.
Решать это надо в два этапа:
1. Не желающим вникать в нюансы разработки пользователям должно побороть соблазн потреблядства и воплотить свой опыт в пользовательскую документацию;
2. «Теория без практики мертва». Поэтому помимо собственно оформления опыта необходимо работать и над его внедрением в практику.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
"Экспорт же является только преобразованием предварительно оформленного документа."
Не только.
Если снизойти до потреблядственников, то можно заметить, что при открытии диалога "Настройки Export2FB21..." помимо всех пунктов, есть еще пункт "Разное", где как раз и ведется работа корректора (удаление пустых строк, обработка ссылок, обработка проблемных символов и т.п.)
Таким образом было бы логичным добавить туда же функции по конвертации текста подготовленного для CODE в соответствующий для fb2 формат...
Last edit: fb2_user 2015-01-16
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Я создавал конвертер таким образом, чтобы он экспортировал максимально точно то, что приходит к не у на вход. Была введена некоторая интеллектуальность и мелкая обработка текста, но это все в очень малой степени влияет на изменение исходного текста.
Кому-то нужен экспорт обработанного текста. Кому-то -нет. Поэтому пользователь может обработать текст Корректором так, как ему удобно, а потом сделать экспорт. Угадать желания всех пользователей по автообработке текста при экспорте невозможно :).
Я не совсем понял, что там сейчас с code? Вроде я вносил изменения в код программы. Может я что-то упустил?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Это уже не обязательно :)
Сделал для панели fb2 стилей, для стиля code дополнение: все множественные простые и множественные/одиночные пробелы автоматически меняются на неразрывные при задании выделенным абзацам стиля code. Так уцдобнее :)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Создаю свой стиль "Код", основной особенностью которого является шрифт "Courier New" (для автоматического применения тэга code, выделяю АБЗАЦ, применяю созданный Стиль абзаца "Код", в итоге получается следующее:
Нужно чтобы было так (пробелы вместо подчеркивания):
/
Это простая программа на С#.
Назовем ее Example.cs.
/
using System;
class Example
{
_// Любая программа на C# начинается с вызова метола Main().
static void Main()
_{
__Console.WriteLine("Простая программа на С#.");
}
}
А получается так (тэг code применяется построчно, но начинается не с начала строки, а с тэга P):
<p><code>/</code></p>
<p><code>Это простая программа на С#.</code></p>
<p><code>Назовем ее Example.cs.</code></p>
<p><code>/</code></p>
<p><code>using System;</code></p>
<p><code>class Example</code></p>
<p><code>{</code></p>
<p> <code>// Любая программа на C# начинается с вызова метола Main().</code></p>
<p> <code>static void Main()</code></p>
<p> <code>{</code></p>
<p> <code>Console.WriteLine("Простая программа на С#.");</code></p>
<p> <code>}</code></p>
<p><code>}</code></p>
Т.е. мы видим код без отступов!
/
Это простая программа на С#.
Назовем ее Example.cs./
using System;
class Example
{
// Любая программа на C# начинается с вызова метола Main().
static void Main()
{
Console.WriteLine("Простая программа на С#.");
}
}
Last edit: fb2_user 2014-12-26
Вы пытаетесь применить формат вне его изначальной целевой ниши.
В рамках XML данные элементы форматирования (отступы) задаются стилями.
Но будьте готовы к встрече со второй необходимой частью решения: поддержкой используемых Вами элементов прикладным ПО (программами для чтения, стили ЕМНИП поддерживает только CoolReader3, но в как минимум базовой прошивке современных читалок он уже не встречается). И здесь Вас ждёт много «приятнейших» сюрпризов.
Потому я бы рекомендовал начать с знакомства с областью и условиями реализуемости фичи автоматического масштабирования. Например в третьей версии сочинения тов. Львовского.
И ориентироваться на родной формат оптимального решения задачи (dvi).
Уже не помню точно, но, кажется, я делал, чтобы стартовые в абзаце пробелы входили в обрамление тэгом code. После праздников посмотрю, в чем там дело.
Starikov Sergey, я не имею возможности читать книги, отформатированные "по фэншую", т.к. большая часть книг с технической литературой максимум что есть - это отсканированная и распознанная в FineReader книжка и хорошо, если она будет в fb2, а не pdf. Так что я буду продолжать использовать CoolReader ;)
P.S. Интересно, а авторы sourceforge discussion не пробовали сделать для форматирования текста что-то подобное phpBB? :)))
Проблема в том, что не–фэньшуй в данном случае (распознали и засунули в xml) как правило означает потерю форматирования (и смыслов, заложенных в оное) вообще.
Впрочем, и без форматирования, сделав шаг в сторону можно обнаружить целые залежи граблей (Вам показать… ИВНР «разработчиков», типа кириллических (!) шрифтов, на вопрос о количестве букв для полной поддержки только русской кириллицы гордо отвечающих — 33?).
Если хотите убедиться на личном опыте — оформите в fb2 пару страниц pgfmanual ☺
ЗЫ: Задавать такие вопросы следует в соответствующем месте.
https://sourceforge.net/p/forge/feature-requests/
И не забудьте пожалуйста ссылку в тему ☺
Да нет. Я про то, что в IDE редакторах отступы форматируются именно с помощью пробелов (ну максимум с помощью табов), но не стилями. Поэтому для тэга CODE форматирование отступов происходит ТОЛЬКО с помощью пробелов. Хотите проверить, откройте Visual Studio, и скопируйте текст в блокнот. Если фрагмент кода без ошибок, IntelliSense его выравнивает с помощью пробелов.
Логично и закономерно.
Ибо требования компилляторов/интерпретаторов.
А вот проверить по предлагаемому сценария не могу. ☺
Аж два раза.
Во-первых, потому что разработчик не обременяет себя поддержкой моей платформы.
Во-вторых в силу несогласия с условиями лицензионного «соглашения».
Так я не понял. Версия fb2tools обновилась, а изменений нет? При конвертации все так же блок code пробелы не ставит...
Или нужно где-то галку поставить?
Пример:
Есть мнение, что в качестве примера интересен не результат (.fb2), а исходник (.odt).
Насколько я представляю логику, после задания стиля форматирования надо применить корректор текста.
О, помогло. Большое спасибо. Но разве корректор текста не запускается автоиматически при экспорте в fb2?
Нужто он (корректор текста) при каком-то сценарии должен делать это?
Корректор реализует операцию обработки текста (предполагающую как минимум контроль результатов).
Экспорт же является только преобразованием предварительно оформленного документа.
Потому я и говорю не недопустимости стремления к халяве и уклонения в потреблядство: решение логичное и очевидное с точки зрения разработчика (или пользователя тем или иным образом причастного к разработке) может представляться внезапным для простопользователя.
Решать это надо в два этапа:
1. Не желающим вникать в нюансы разработки пользователям должно побороть соблазн потреблядства и воплотить свой опыт в пользовательскую документацию;
2. «Теория без практики мертва». Поэтому помимо собственно оформления опыта необходимо работать и над его внедрением в практику.
"Экспорт же является только преобразованием предварительно оформленного документа."
Не только.
Если снизойти до потреблядственников, то можно заметить, что при открытии диалога "Настройки Export2FB21..." помимо всех пунктов, есть еще пункт "Разное", где как раз и ведется работа корректора (удаление пустых строк, обработка ссылок, обработка проблемных символов и т.п.)
Таким образом было бы логичным добавить туда же функции по конвертации текста подготовленного для CODE в соответствующий для fb2 формат...
Last edit: fb2_user 2015-01-16
Так лучше :)
Я создавал конвертер таким образом, чтобы он экспортировал максимально точно то, что приходит к не у на вход. Была введена некоторая интеллектуальность и мелкая обработка текста, но это все в очень малой степени влияет на изменение исходного текста.
Кому-то нужен экспорт обработанного текста. Кому-то -нет. Поэтому пользователь может обработать текст Корректором так, как ему удобно, а потом сделать экспорт. Угадать желания всех пользователей по автообработке текста при экспорте невозможно :).
Я не совсем понял, что там сейчас с code? Вроде я вносил изменения в код программы. Может я что-то упустил?
Да нет, сейчас вроде все нормально. Оказывается нужно принудительно запустить пункт меню "Автоматическая разметка листингов программ".
Это уже не обязательно :)
Сделал для панели fb2 стилей, для стиля code дополнение: все множественные простые и множественные/одиночные пробелы автоматически меняются на неразрывные при задании выделенным абзацам стиля code. Так уцдобнее :)
А когда появится обновление для скачивания?
С таким вопросом приглашаю подписаться на список fbtools-release ☺
Я сейчас в отпуск уехал - где-то после 10 марта исправлю еще новый баг экспорта - и выложу новый релиз.
Тему можно закрыть - все сделано в релизе 3.32