Данный форум существует в настоящий момент, как памятник истории развития движения сторонников КОБ и хранилище значительного объёма сопутствующей информации. Функцию площадки общения форум не исполняет. Регистрация новых пользователей запрещена.
На случай, если Вам по какой-либо причине понадобится зарегистрироваться на форуме, пишите в телеграм @Sirin77
|
| Конкретная работа. Предложения. Придумал - предложил - сделал. |
01.12.2011, 20:52
|
#1
|
|
Команда сайта
Регистрация: 14.05.2009
Адрес: Москва
|
Цитата:
Сообщение от Sirin
может fb2 поковырять?
или djvu?
или odt?
|
Не понял, ты же хочешь чтобы в хтмл выводить... Ну и надо тогда в мускуле хранить...
Просто строка:
Шуньке завта трицаган стукнет...
Не равна строке:
Шуньке завта [wow]трицаган[/wow] стукнет...
...
По идее при полнотекстовом поиске учитывается "вес" найденного фрагмента - но вес будет большим у того фрагмента, в котором присутствуют все слова, то есть вес у:
Шуньке завта [wow]трицаган[/wow] стукнет...
по идее будет такой же как вес у:
Кобеки, а знаетели вы что Шуньке то нашему завтра уже аж [wow]трицаган[/wow] по годам стукнет...
Тоже проблемка...
Как решение - можно хранить вариант с версткой и без, искать по без верстки, выводить с версткой...
Ну это первое что в головомоск приходит... Не очень конечно же изящно...
|
|
|
01.12.2011, 21:01
|
#2
|
|
Команда сайта
Регистрация: 14.05.2009
Адрес: Москва
|
И при выводе в ХТМЛ не совсем ясно как со сносками быть...
|
|
|
01.12.2011, 21:49
|
#3
|
|
Команда сайта
Регистрация: 30.10.2008
Адрес: Подмосковие
|
Согласен с Январем, поделюсь своим опытом. В текстах ВП используется много форматирования. Если вводить в базу голый текст, то он будет выводиться без форматирования - теряется некоторый смысл текстов. Если вводить в базу отформатированный в html текст (через tinymce), то в других форматах он будет не правильно отображаться, к тому же при конвертации tinymce получаются разные косяки с форматированием (не так как в исходных текстах + много лишних тегов), которые всё равно приходится устранять руками. Либо нужен универсальный скрипт-конвертер, который будет переводить html в fb2 и т.п. Либо можно всё перевести в fb2 и загрузить в базу, а на сайте поставить скрипт-перекодировщик fb2 -> html (скорее всего уже есть готовые решения).
По поводу сносок - тоже большая проблема, потому что tinymcy добавляет их в конец текста, и это очень неудобно каждый раз обращаться в конец, чтобы прочитать сноску. На e-dotu есть модуль для WordPress, который заключает сноски в теги [ref][/ref] прямо в тексте и потом обрабатывает их. Например, когда наводишь мышкой на номер сноски, сразу всплывает текст сноски. Но это нужно делать вручную, либо написать скрипт, который будет брать сноску из конца и вставлять в теги по соответствующему номеру в тексте.
Админ e-dotu ушёл в армию полгода назад, я взялся за перевод старых и новых текстов в html. Делаю вручную, долго и муторно, но зато качественно. Сейчас переведены тексты с 2007-2011 гг. и 1990-1996 гг.
|
|
|
01.12.2011, 21:58
|
#4
|
|
Команда сайта
Регистрация: 14.05.2009
Адрес: Москва
|
Ну инденты то как минимум нужны, жирност и курсивность - они на каждом шагу...
Таки опять вопрос - формулы как выводить?
Цитата:
|
Сообщение от Я
И при выводе в ХТМЛ не совсем ясно как со сносками быть...
|
Как вариант - сноски мона тултипами сделать, наводишь на нее, она показывается - http://flowplayer.org/tools/demos/tooltip/index.html
Цитата:
|
Если вводить в базу отформатированный в html текст (через tinymce), то в других форматах он будет не правильно отображаться, к тому же при конвертации tinymce получаются разные косяки с форматированием (не так как в исходных текстах + много лишних тегов), которые всё равно приходится устранять руками.
|
Верстку хоть из тинимси - все равно надо переводить в бибикод для хранения - это единственный гибкий вариант хранения...
Цитата:
Думаю, что мы сейчас велосипед изобретаем.
Всё это, в т.ч. вопрос форматирования уже решён в портативных читалках.
(смотрим в сторону формата .chm)
Сноски индексировать как отдельные фрагменты/блоки/страницы. В основном тексте давать на них сноску.
Фсё.
|
Это если не учитывать - как технически реализовать поиск, сколько времени уйдет на постоянное форматирование туда сюда...
Из мускула полнотекстовый поиск вернет результат за 0.0006 при 10 млн. проходов.
Таким образом дальше только вопрос форматирования... Как все остальное делается - не ясно...
...
Есть такая штука - кладр... У него интересный способ хранения данных... Можно попробовать...
Короче завтра что-нибудь набросаю... Думаю окончательно уйти абсолютно от всех ручных правок не удастся, но от 99% - удастся скорее всего...
|
|
|
01.12.2011, 22:35
|
#5
|
|
Команда сайта
Регистрация: 21.10.2008
Адрес: Москва
|
Цитата:
FB2-файл - это файл XML
FB2-документ является файлом в формате XML.
XML (англ. Extensible Markup Language — расширяемый язык разметки; произносится [икс-эм-э́л]) — рекомендованный Консорциумом Всемирной паутины язык разметки, фактически представляющий из себя свод общих синтаксических правил. XML предназначен для хранения структурированных данных, для обмена информацией между программами, а также для создания на его основе более специализированных языков разметки (например, XHTML), иногда называемых словарями.
|
Вроде бы то, что нужно?..
|
|
|
01.12.2011, 22:38
|
#6
|
|
Команда сайта
Регистрация: 14.05.2009
Адрес: Москва
|
блин
|
|
|
02.12.2011, 00:27
|
#7
|
|
Команда сайта
Регистрация: 21.10.2008
Адрес: Москва
|
|
|
|
02.12.2011, 13:27
|
#8
|
|
Команда сайта
Регистрация: 30.10.2008
Адрес: Подмосковие
|
Цитата:
Сообщение от Январь
Таки опять вопрос - формулы как выводить?
|
Для этого есть язык формул Latex. Например, вводим
Цитата:
|
[latex size="1"]\left\{\begin{matrix} {X}_{1}={a}_{11}{X}_{1}+{a}_{12}{X}_{2}+ . . . +{a}_{1n}{X}_{n}+{F}_{1} \\ {X}_{2}={a}_{21}{X}_{1}+{a}_{22}{X}_{2}+ . . . +{a}_{2n}{X}_{n}+{F}_{2} \\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . \\ {X}_{n}={a}_{n1}{X}_{1}+{a}_{n2}{X}_{2}+ . . . +{a}_{nn}{X}_{n}+{F}_{n} \end{matrix}\right. (1)[/latex]
|
Получаем:
Пример - О контрольных параметрах макроэкономики
Или так:
Цитата:
|
[latex size="2"]{K}_{i}=\frac{{s}_{i}+(p/100)\times \sum_{j=1}^{i-1}{K}_{j}}{1-(p/100)}=\frac{{s}_{i}}{1-(p/100)}+\frac{(p/100)}{1-(p/100)}\sum_{j=1}^{i-1}{K}_{j}[/latex]
|
|
|
|
02.12.2011, 13:54
|
#9
|
|
Команда сайта
Регистрация: 14.05.2009
Адрес: Москва
|
Ничего не понял, но это и не первый вопрос правда.
И так, мы храним в базе формулу: [latex size="1"]{K}_{i}=\frac{{s}_{i}+(p/100)\times \sum_{j=1}^{i-1}{K}_{j}}{1-(p/100)}=\frac{{s}_{i}}{1-(p/100)}+\frac{(p/100)}{1-(p/100)}\sum_{j=1}^{i-1}{K}_{j}[/latex] - при выводе на сайт ее надо преобразовать в картинку. Что именно совершает это преобразование? И на каком этапе?
...
Таблицы (типа таво):
Публикации:
Код HTML:
CREATE TABLE `jx_BookBase` (
`node` bigint(20) unsigned NOT NULL auto_increment,
`parent` bigint(20) unsigned NOT NULL default '0',
`level` bigint(20) unsigned NOT NULL default '0',
`lkey` bigint(20) unsigned NOT NULL default '0',
`rkey` bigint(20) unsigned NOT NULL default '0',
`hide` enum('no','yes') NOT NULL default 'no',
`create` bigint(20) NOT NULL default '0',
`modify` bigint(20) NOT NULL default '0',
`type` varchar(16) NOT NULL default 'undefined',
`author` bigint(20) unsigned NOT NULL default '0',
`name` text,
`text` text,
`chapter` text,
`A` bigint(20) NOT NULL default '0',
`B` bigint(20) NOT NULL default '0',
`signature` text,
PRIMARY KEY (`node`),
UNIQUE KEY `Unique` (`lkey`,`rkey`,`node`,`parent`,`level`),
UNIQUE KEY `Unique (l,r)` (`lkey`,`rkey`),
KEY `Node (parent)` (`parent`),
KEY `Node (level)` (`level`),
KEY `Node (lkey)` (`lkey`),
KEY `Node (rkey)` (`rkey`),
KEY `Node (hide)` (`hide`),
KEY `Node (create)` (`create`),
KEY `Node (modify)` (`modify`),
KEY `Node (type)` (`type`),
KEY `Node (author)` (`author`),
KEY `Period` (`A`,`B`),
KEY `A` (`A`),
KEY `B` (`B`),
KEY `General` (`parent`,`level`,`lkey`,`rkey`,`hide`,`create`,`modify`,`type`,`author`,`node`,`A`,`B`),
FULLTEXT KEY `FullText (name)` (`name`),
FULLTEXT KEY `FullText (text)` (`text`),
FULLTEXT KEY `FullText (signature)` (`signature`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
Авторы:
Код HTML:
CREATE TABLE `jx_AuthBase` (
`node` bigint(20) unsigned NOT NULL auto_increment,
`hide` enum('no','yes') NOT NULL default 'no',
`create` bigint(20) NOT NULL default '0',
`modify` bigint(20) NOT NULL default '0',
`name` varchar(64) NOT NULL default 'undefined',
PRIMARY KEY (`node`),
KEY `General` (`hide`,`create`,`modify`,`name`,`node`),
KEY `Node (hide)` (`hide`),
KEY `Node (create)` (`create`),
KEY `Node (modify)` (`modify`),
KEY `Node (name)` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=cp1251;
Последний раз редактировалось Январь; 02.12.2011 в 14:21
|
|
|
03.12.2011, 13:58
|
#10
|
|
Команда сайта
Регистрация: 30.10.2008
Адрес: Подмосковие
|
Цитата:
Сообщение от Январь
Что именно совершает это преобразование? И на каком этапе?
|
Преобразование совершает скрипт. Если посмотреть ссылку на изображение, то в данном случае это http://s.wordpress.com/latex.php?latex=
Код latex тупо передаётся в качестве переменной и на выходе получаем картинку. Я не искал, но думаю в инете есть эти скрипты для скачивания.
|
|
|
Часовой пояс GMT +3, время: 23:51.
|