Разлика между версии на „Описание на формата SFB“

От Уики на Читанка
Направо към: навигация, търсене
(маркера M е за изключителни случаи)
(подобрено начало)
Ред 1: Ред 1:
''(Това описание е съставено въз основа на [[forumtopic:511|мнение на Мандор, пуснато във форума]].)''
+
'''SFB''' е форматът, който ''Моята библиотека'' използва за вътрешно представяне и съхраняване на текстовото съдържание на произведенията. Прочетете статията [[Защо SFB?]], за да се запознаете с принципите, залегнали в основата на този формат.
  
Имайте предвид, че този формат описва структурата на художественото произведение, а не начина, по който се форматира и извежда. В [[chitanka:lib/sandbox|пясъчника]] можете да си правите експерименти и да видите по какъв начин се форматират текстовете в ''Моята библиотека''.
+
За начална ориентация вижте [http://www.youtube.com/watch?v=V1TJVct9v8Q видеоурока на Иван Ванков (gatakka)].
  
За начално ориентиране в SFB-форма̀та вижте [http://www.youtube.com/watch?v=V1TJVct9v8Q видеоурока на Иван Ванков (gatakka)].
+
Имайте предвид, че форматът SFB описва структурата на художественото произведение, а не начина, по който се форматира и извежда. В [[chitanka:sandbox|пясъчника]] можете да си правите експерименти и да видите по какъв начин се форматират текстовете в ''Моята библиотека''.
 +
 
 +
''(Началната версия на това описание е съставена въз основа на [[forumtopic:511|мнение на Мандор, пуснато във форума]].)''
  
 
== Обща информация ==
 
== Обща информация ==

Версия от 16:15, 8 февруари 2014

SFB е форматът, който Моята библиотека използва за вътрешно представяне и съхраняване на текстовото съдържание на произведенията. Прочетете статията Защо SFB?, за да се запознаете с принципите, залегнали в основата на този формат.

За начална ориентация вижте видеоурока на Иван Ванков (gatakka).

Имайте предвид, че форматът SFB описва структурата на художественото произведение, а не начина, по който се форматира и извежда. В пясъчника можете да си правите експерименти и да видите по какъв начин се форматират текстовете в Моята библиотека.

(Началната версия на това описание е съставена въз основа на мнение на Мандор, пуснато във форума.)

Обща информация

Текстът се форматира по правилото „един ред — един параграф“. Всеки ред започва с табулатор. В следващите примери табулаторите са представени така:

Табулатор

Форматиращите елементи (маркерите) се разполагат преди табулатора. Те се разделят на два вида: блокови и едноредови.

Блокови маркери

Ограждат част от текст с „X>“ (отварящ маркер) и „X$“ (затварящ маркер), където „X“ е кодът на маркера. Трябва да са сами на ред; без табулатор преди маркера и без текст след него. Кодовете на всички маркери са на латиница. Такива маркери са:

  • A (анотация);
  • C (цитат);
  • D (посвещение);
  • E (епиграф);
  • F (предварително форматиран текст);
  • I (информация);
  • P (стихотворение);
  • T (таблица);
  • M (стилове).

Едноредови маркери

Разполагат се в началото на абзаца, преди табулатора, и оказват влияние само върху този абзац. Такива маркери са:

  • | (заглавие),
  • (заглавия на секции от различни равнища):
    • >;
    • >>;
    • >>>;
    • >>>>;
    • >>>>>;
  • # (подзаглавие);
  • @ (автор);
  • @@ (дата, място); използва се само в стихове, цитати и, евентуално, в края на произведение;
  • ! (заглавен ред в таблица);
  • F (предварително форматиран текст).

Заглавие

Нова версия на описанието.

Заглавие се маркира чрез знака „|“, код 0x7C (#124). Ако заглавието е от няколко реда, всичките трябва да са маркирани с „|“:

Пример:

| Иван Ефремов | Часът на бика

Само книгата и стихотворенията могат да съдържат заглавия.

Подзаглавие

Нова версия на описанието.

Подзаглавие се маркира чрез знака „|“, „#“ или „>“ в зависимост от мястото на подзаглавието и типа на оформяне на файла:

1. Подзаглавие на заглавие на едно произведение, което е един файл:

Пример:

| Рей Бредбъри | Гробище за лунатици | Друга приказка за два града

2. Подзаглавие на произведение, когато са много произведения в един файл (най-често разкази):

Пример:

> По пасбищата небесни|Криминално-фантастична повест > Владимир Пирожников

3. Подзаглавие на глава от произведение:

Пример:

> Глава 1 # в която Дан Разкърши-Се се появява в Света на Дисни.

Ако главата е разделена на части, които се маркират с „>>“, подзаглавието се записва като продължение на заглавието:

Пример:

> Глава 1 > в която се случват доста интересни неща >> В гостната … >> На двора

Анотация

Нова версия на описанието.

Анотацията е кратко представяне на произведението, най-често го отпечатват на задната корица. Анотацията се огражда с двойката маркери „A>“ и „A$“ и трябва да се постави веднага след заглавието на произведението.

Пример:

A> В дълбока древност цар Калидаса изгражда Фонтаните на Рая. … A$

Секция

Нова версия на описанието.

Секцията е самостоятелен фрагмент от текста, който може да има собствено заглавие, епиграф и т.н. При романите секция се явява отделна глава или част от произведението, а при разказите цялото произведение е една секция (в повечето случаи).

Секцията се маркира с един или повече последователни знака „>“, код 0x3E (#62). Броят на знаците показва нивото на вложеност на секцията. Ако заглавието на секцията е от няколко реда, всичките трябва да са маркирани с „>“.

Пример:

> ЧАСТ ПЪРВА > Срещу глупостта… … >> Глава 1 … >>> 1. … >>> 2. … >> Глава 2 … > ЧАСТ ВТОРА > … самите богове… … >> Глава 1 … >> Глава 2

Заглавието на секцията не е задължително, т.е. след маркера може и да няма текст (пример: „Дюн“ на Франк Хърбърт).

За по-удобно визуално възприятие се препоръчва оставянето на два празни реда преди заглавието на секцията и един празен ред след него.

Подзаглавие

Подзаглавие се маркира чрез знака „#“, код 0x23 (#35). За разлика от заглавието, подзаглавието може да се появява на произволно място в текста и не участва в съдържанието на книгата.

Пример:

На първа страница пишеше: C> # ЦЕНИТЕ СЕ ПОКАЧВАТ! Нашият кореспондент… … C$

Епиграф (мото)

Нова версия на описанието.

Епиграфът се огражда с двойката маркери „E>“ и „E$“. Епиграф може да се появи само в началото на книгата, в началото на секция или в началото на стихотворение (след заглавията, ако ги има). Допустимо е описването на повече от един последователни епиграфа, както и смесването на епиграфи и посвещения.

Пример:

E> Homo homini lupus est. @ Латинска поговорка E$

Възможно е същността на епиграфа да представлява и стихотворение.

Пример:

E> P> Съзрях ангела, пленен в мрамора и не спрях да дълбая, докато не го освободя. @ Микеланджело Буонароти P$ E$

Посвещение

Нова версия на описанието.

Посвещението се огражда с двойката маркери „D>“ и „D$“. За разлика от епиграфа, той може да се появи само в началото на книга. Във всичко останало не се различава от епиграфа.

Пример:

D> На читателите ми. D$

Цитат

Нова версия на описанието.

Цитатът се огражда с двойката маркери „C>“ и „C$“. Цитат може да се появява само в тялото на секция.

Пример:

Във „Всеки шпионин — принц“ журналистите Дан Равив и Йоси Мелман описват стила на Амит: C> Новият шеф имаше за цел да трансформира Мосад в сериозна и модерна разузнавателна организация… C$

Маркерът за цитат се използва и за означаване на писмо:

Пример:

C> Когато те видях последния път, преброих девет лунички на твоя нос. @ Твой Никълъс C$

Стихове

Нова версия на описанието.

Стихотворенията се ограждат с двойката маркери „P>“ и „P$“. Те могат да имат собствено заглавие и епиграф (посвещение). Отделните куплети от поемата се разделят с празен ред.

Пример:

P> # ВРЕМЕ Текат минути, часове и дни — в безспирен бяг безследно отлетели, Как страшно в тези четири стени Ти блъскаш свойте мисли посивели…

И чакаш някого… Но идва ден … @ Пинк Флойд P$

Табела

Използва се маркер „M“ с параметър „frame“:

Пред къщата имаше табелка: M> frame ЗА ПРОДАН M$

Знаци, табели и др. подобни текстове (които обикновено се форматират като центрирани с рамка) се ограждат с двойката маркери „M> frame“ и „M$“.

Забележка: Текст ограден в рамка, се изобразява коректно само при четене през браузър, докато при повечето видове електронни четци, това не е така. Ето защо, вместо двойката маркери „M> frame“ и „M$“, препоръчваме където е възможно да се използва:

Пред къщата имаше табелка: C> # ЗА ПРОДАН C$

Таблици

Нова версия на описанието.

Таблици се дефинират чрез блоковия маркер „T“. За евентуално заглавие на таблицата се ползва маркерът „#“.

Заглавните редове се отбелязват чрез едноредовия маркер „!“. Клетките в реда се разделят чрез знака „|“, код 0x7C (#124).

Пример:

T> # Примерна таблица ! Колонка 1 | Колонка 2 Клетка 1.1 | Клетка 1.2 Клетка 2.1 | Клетка 2.2 T$

Като HTML горният пример би могъл да изглежда така:

Примерна таблица
Колонка 1 Колонка 2
Клетка 1.1 Клетка 1.2
Клетка 2.1 Клетка 2.2

Автор на текст

Автор на текст се маркира със знака „@“, код 0x40 (#64). Той може да се появи в края на епиграф, цитат, стихотворение, писмо. Вижте съответните примери за тези елементи.

Време и място

Информацията за време и място се маркира чрез „@@“. Най-често се среща в писма или в края на произведението. Примери:

C> @@ Пловдив, 1919 г.

Уважаема госпожо, С настоящото писмо искам да Ви уведомя… C$

или:

… @@ София @@ 1990

Предварително форматиран текст

За предварително форматиран текст се използва маркерът „F“ в ролята му на блоков или на единичен маркер.

Пример:

F> 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 F$

Информация

Допълнителната информация за произведението (сканирал, коригирал и информация за книжното издание) се записва в края на текста и се огражда чрез маркерите „I>“ и „I$“.

Пример:

I> $orig_author=Norman Polmar, Thomas B. Allen $orig_lang=en $orig_title=Spy Book: the encyclopedia of espionage $year=1997 $translator=Цветана Генчева, Радко Радев $trans_year=2001 $pub_year=2001 $type=science


Сканиране: Диан Жон, 2010 г. Разпознаване и корекция: Dave, 2010 г.


__Издание:__ Норман Полмар, Томас Б. Алън. Енциклопедия на шпионажа Американска, първо издание Редактор: Райчо Радулов Коректор: Юлия Шопова Технически редактор: Стефка Иванова Художник: Виктор Паунов, 2001 г. ИК „Труд“, 2001 г. ISBN: 954–528–213–4 I$

По-подробна информация за добавянето на нови текстове можете да намерите във връзката „Нови текстове“.

Бележки под линия

Мястото на препратката към бележката се маркира със звездичка — „*“. Ако в един абзац има повече от една препратка, те могат да се маркират с няколко последователни звездички или със звездичка, следвана от число.

Текстът на бележката под линия трябва да се появи на следващия ред, да е ограден в квадратни скоби („[…]“) и да започва с текста на препратката. Текстът на бележката може да е от няколко реда.

Пример:

— Какъв номер, господи! Сансасионел!*1 Дьо тонер!*2 [*1 Сензационно! — Б.р.] [*2 Гръмотевично! — Б.р.]

Акцентиран текст

Смисловото ударение върху текст се отбелязва чрез ограждането на текста със знака „_“ — код 0x5F (#95). Най-често се форматира в курсив (наклонен текст); в по-старите книги — с малко по-голяма разредка между буквите.

Пример:

— Но ние _трябва_ да отидем!

За по-голямо смислово ударение се ползват два последователни знака — „__“. Обикновено текстът се форматира в получер.

Пример:

— Но ние наистина __трябва__ да отидем!

Горен и долен индекс

За да обозначите даден текст като горен индекс е нужно да използвате маркерите {sup} и {/sup} (от superscript). Пример:

В човешкото тяло има приблизително 10{sup}28{/sup} атома.

Ще изглежда по следния начин:

В човешкото тяло има приблизително 1028 атома.


Долният индекс се задава посредством маркерите {sub} и {/sub} (от subscript). Пример:

… опасна концентрация на С{sub}27{/sub}Н{sub}45{/sub}ОН…

Ще изглежда по следния начин:

… опасна концентрация на С27Н45ОН…

Външни препратки

SFB форматът позволява да се форматира текст, така че да служи като препратка (връзка) към страница в Интернет. Пример:

В сайта на „Човешката библиотека“ имате [[http://choveshkata.net/blog/?page_id=692|възможност да закупите хартиената книга]] или пък да подкрепите парично автора и неговите помощници.

Връзката ще изглежда по следния начин:

В сайта на „Човешката библиотека“ имате да закупите хартиената книга или пък да подкрепите парично автора и неговите помощници.

А може и без пояснителен текст:

За повече информация на тема „Лични финанси“ — [[http://kadebg.com|kadebg.com]]

Връзката ще изглежда така:

За повече информация на тема „Лични финанси“ — kadebg.com

Изображения

Изображенията се дефинират чрез конструкциите:

{img:име_на_файл} — извежда само изображение.

{img:име_на_файл|Алтернативен текст} — извежда само изображение, а алтернативният текст се показва на читателя, ако самото изображение не може да бъде заредено или видяно.

{img:име_на_файл|#Текст} — извежда изображение и текст под него.


Ако конструкцията {img:…} е самичка на реда, тогава изображението се извежда центрирано на самостоятелен ред:

Пример:

На листчето беше нарисувано следното: {img:listche.png|Множество разноцветни многоъгълници} — Но това е пълна бъркотия! — учуди се…

Ако изображението е отляво или отдясно на текста, следващ изображението, използваме съответно {img:…|-left} или {img:…|-right}:

Пример:

На листчето беше нарисувано следното: {img:listche.png|Множество разноцветни многоъгълници|-right} — Но това е пълна бъркотия! — учуди се…

Ако около конструкцията {img:…} има текст, тогава картинката се „вмъква“ на съответното място:

Пример:

…ще маркирам мястото със знака {img:znak.png}. Ще се срещнем…

Препоръчително е изображението да е във формат jpeg или png. Използването на формата png е препоръчително при изображения с малко количество цветове (черно-бял режим).

Имената на изображенията трябва да са на латиница с малки букви: „ime_na_kartinka.png“, а за интервалите между думите се използва долна черта „_“. Имената на изображенията трябва да са описателни и да съдържат само латински букви, цифри или долни черти.

Сюжетни разделители

В повечето книги се използват два типа сюжетни разделители — три последователни звездички или празни редове.

В първия вариант звездичките се изписват в текстовата част на реда (след табулатора); пред тях няма маркер; между звездичките се оставя по един интервал. За по-добро визуално възприятие е задължително да се остави по един празен ред преди и след разделителя.

Пример:

…   * * *  

Във втория вариант се оставят точно два празни реда.

Специфични знаци

За късо тире (или дефис) (например при съставни думи като „синьо-зелен“) се използва стандартният знак с код 0x2D (#45). За дълго тире (напр. в пряка реч) се използва знакът „“ с код 0x2014 (#8212). Около късото тире не трябва да има интервали; около дългото тире винаги има по един интервал (освен когато са в началото на реда; тогава след табулацията няма интервал):

Пример:

— Мълчи! — избухна Валдемар. Хелга каза предпазливо: — Би ли желал да прекараш лятото с нас в планината?


При особени случаи като „кино– и фотоапарати“ или „…достигна –15°C“ се използва средно тире с код 0x2013 (#8211).

За апостроф се използва знакът „'“ с код 0x27 (#39).

Ударението се маркира чрез знака „`“ с код 0x60 (#96), поставен след ударената гласна.

За кавички е препоръчително да се използват стандарните български кавички („…“), с кодове съответно 0x201E (#8222) за отваряща и 0x201C (#8220) за затваряща, или ъгловите (френски) кавички («…»), с кодове съответно 0xAB (#171) за отваряща и 0xBB (#187) за затваряща.

Броят на отварящите и затварящите кавички трябва да е еднакъв, дори при натрупване на две и повече последователни кавички, напр.:

На бележката пишеше: „Ще се видим в «Хилтън»“

Всички тези знаци служат като маркировка; след преобразуването (напр. в HTML) те ще се трансформират в съответните типографски знаци.

Различни стилове

В изключителни случаи може да се окаже нужно указването на много специфично форматиране. Чрез блоковия маркер M или чрез вътрередовия маркер m може да се постигне присвояване на различни предварително дефинирани стилове към части от текста.

Примери:

M> sujet2 Тук започва втора сюжетна линия. M$

M> center Центриран текст. M$

Интересно форматиране: {m large}по-голям шрифт{/m}, {m smallcaps}текст с главни букви{/m}.

Поддържат се следните стилове:

sujet2
втора сюжетна линия
frame
ограждане в рамка (може да се използва за означаване на табела или знак)
center
центриране
right
подравняване вдясно
bold
Получер (удебелен) шрифт
italic
Курсивен (наклонен) шрифт
smallcaps
малки главни букви
underline
подчертаване
overline
надчертаване
upper
превръщане в главни букви
large
уголемяване на шрифта с 10%
x-large
уголемяване на шрифта с 20%
xx-large
уголемяване на шрифта с 30%
xxx-large
уголемяване на шрифта с 40%
small
смаляване на шрифта с 10%
x-small
смаляване на шрифта с 20%
xx-small
смаляване на шрифта с 30%
xxx-small
смаляване на шрифта с 40%

Внимание: Маркерите M и m нямат собствено значение (семантика) и в почти всички случаи употребата им е излишна. Старайте се да описвате различните части на текста чрез другите, семантични маркери!