Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« : 31.01.2007, 00:08:48 » |
|
Плагин «Русская типографика» позволяет сделать текст ваших статей более удобными для восприятия, в частности: - производится замена обычных кавычек "" на елочки «» и лапки „“ (для вложенных);
- неразрывный пробел перед тире (тире в начале строки может быть только в случае прямой речи), само тире из коротенького «минуса» - становится «нормальным» —;
- вставляется неразрывный пробел между инициалами и фамилией (теперь не будет «Пушкин» на одной строке, а «А.С.» — на другой);
- вставляется неразрывный пробел после сокращений (ул. Ленина), арабских (38 попугаев) и римских цифр (XXVIII съезд), перед некоторыми сокращениями (пять руб.), в устоявшихся сокращениях (и т.д., и т.п., и др.);
- телефонный номер обрамляется тегами <nobr>;
- и др.
Приму любые предложения и пожелания по доработке мамбота. Добавлено в версии 1.1:- многие настройки можно включать/отключать в настройках мамбота;
- убираются пробелы перед знаками пунктуации;
- 1/2, 1/4 и 3/4 заменяются на ½, ¼ и ¾;
- возможность прикреплять короткие слова к последующим, а частицы — к предыдущим словам;
- возможность выдавать символы типа «, … и т.д. (имеющиеся в кодировке windows-1251) в виде «, … и т.д.
- и др.
Добавлено в версии 1.2:- теперь мамбот не затрагивает содержимое тегов.
Версия 2.0Возможности мамбота значительно расширились — в настройках содержится более 50-ти параметров, среди которых добавились (по сравнению с предыдущей версией): - не разрывать слова при помощи неразрывного пробела / тега nobr / стиля white-space:nowrap;
- настраиваемые символы тире и короткого пробела;
- не разрывать номера телефонов;
- не разрывать числа, разбитые на разряды (например, 1 000 000);
- не разрывать двойные слова (например, два-три, из-за);
- не отрывать абревиатуру формы собственности от названия организации;
- различные автозамены символов;
- исправление некоторых пунктуационных ошибок;
- и многое другое.
Исправлено в версии 2.0.4:- исправлена ошибка с обработкой научных степеней (до этого, например, «к.ф.-м.н.» заменялось на «к. к. н.»);
- исправлена обработка заголовков для J1.5 и J1.6 (теперь там не используется <nobr>).
Для желающих принять участие в разработке: текущая версия плагина доступна на https://github.com/dryabov/rustypo.ВНИМАНИЕ! Убедительная просьба: если у вас текст статей стал как-то неправильно или странно выводиться после установки мамбота — вышлите мне образец этого текста (вместе с html-тегами) на e-mail или через Личные сообщения на этом форуме.
|
|
|
|
« Последнее редактирование: 04.07.2011, 16:48:33 от Physicist »
|
Записан
|
|
|
|
| |
AlCher
Захожу иногда

Репутация: +2/-0
Offline
Сообщений: 20
|
 |
« Ответ #31 : 06.02.2007, 13:15:44 » |
|
Судя по обсуждениям, работа действительно представляется полезной. Но хотелось бы лучше чувствовать грань - полезности и целесообразности. Дабы увлекшись одним, не потерять в другом, не закопаться в частностях. Хотелось бы услышать мнение автора мамбота на этот счет. Увеличение функциональности и стремление учесть как можно больше, не приведет ли это к издержкам - в части увеличения количества запросов к БД, снижения быстродействия и т.п. Не будут ли возникать конфликты с известными редакторами, например, WysiwygPro? Возможно я глубоко не вник в работу мамбота и мои вопросы покажутся дилетанскими, приношу извинения за это.
|
|
|
|
|
Записан
|
|
|
|
|
smart
|
 |
« Ответ #32 : 06.02.2007, 13:48:46 » |
|
не приведет ли это к издержкам - в части увеличения количества запросов к БД, снижения быстродействия и т.п. количество запросов не увеличится, а с учетом использования кэширования в Joomla изменение быстродействия будет незаметно (да и оно не столь существенно, чтобы его можно было заметить). Не будут ли возникать конфликты с известными редакторами, например, WysiwygPro? а это надо изучать опытным путем, и сообщать об этом разработчику. @Physicist: есть еще одна идея по оптимизации — в много страничных материалах обрабатывать только текущую страницу, не затрагивая остальные. это позволит сократить объем обработки и чуток повысит быстродействие. хотя это конечно и не первоочередная задача.
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #33 : 06.02.2007, 13:52:43 » |
|
Как автор могу подтвердить, что запрос к БД будет всего один. А что касается функций — то они все будут опциональными. Т.е. Вы может включить/отключить практически любую замену, так что бремя лавирования между скоростью и функционалом ложится исключительно на Ваши плечи. Я сейчас больше занят «ядром» мамбота: он будет стабильно работать как с windows-1251, так и с utf-8 кодировками; результат работы мамбота не должен зависеть от установленной локали (поэтому нужно отказаться от использования \w и пр. в регулярных выражениях); все места, где нужно вставить неразрывный пробел, короткий пробел или неразрывные дефис/тире будут лишь помечаться, а конкретное оформление (не разрывать через или <nobr>, тип тире — –, — или &minus, и т.д.) будет выполняться лишь на конечном этапе. Плюс, хотелось бы «прикрутить» к мамботу js-скрипт расстановки переносов, но существующие решения меня не устраивают. Например, скрипт с http://shy.dklab.ru/newest/ работает только в Internet Explorer 6.0+, скрипт с http://snusmumrik.org.ru/ru/hyph/ не работает при отключенных картинках в браузере. Тем более, оба они используют примитивный набор правил для переноса (с правилами TeX'а их даже нельзя сравнивать). Если кто знает еще примеры таких скриптов (может быть, для какого-нибудь другого языка, а не только русского) — напишите, пожалуйста.
|
|
|
|
« Последнее редактирование: 06.02.2007, 14:27:24 от Physicist »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #34 : 06.02.2007, 20:15:15 » |
|
Хотя, расстановка переносов — это тема для отдельного разговора. В любом случае было бы интересно это осуществить. Как подключить правила из TeX'а я уже нашел. Остается решить две нерешаемые проблемы, на которые можно закрыть глаза: 1) «мягкие» переносы ­ поддерживаются далеко не всеми браузерами; 2) даже те браузеры, которые их поддерживают, вставляют их при копировании в буфер обмена в копируемый текст; а отловить и правильно обработать событие oncopy можно только в IE.
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #35 : 06.02.2007, 20:38:40 » |
|
Набросал функции перевода UTF-8<==>Windows-1251, не зависящие от наличия iconv и/или mbstring. Кто разбирается — проверьте правильность кода. $ents = array( '…'=>'…','†'=>'†','‡'=>'‡','€'=>'?','‰'=>'‰','•'=>'•','–'=>'–','—'=>'—','™'=>'™',' '=>' ','¤'=>'¤','¦'=>'¦','§'=>'§','©'=>'©','«'=>'«','¬'=>'¬','­'=>'','®'=>'®','°'=>'°','±'=>'±','µ'=>'µ','¶'=>'¶','·'=>'·','»'=>'»', 'Ђ'=>'Ђ','Ѓ'=>'Ѓ','‚'=>'‚','ѓ'=>'ѓ','„'=>'„','Љ'=>'Љ','‹'=>'‹','Њ'=>'Њ','Ќ'=>'Ќ','Ћ'=>'Ћ','Џ'=>'Џ','ђ'=>'ђ','‘'=>'‘','’'=>'’','‛'=>'“','“'=>'”','љ'=>'љ','›'=>'›','њ'=>'њ','ќ'=>'ќ','ћ'=>'ћ','џ'=>'џ','Ў'=>'Ў','ў'=>'ў','Ј'=>'Ј','Ґ'=>'Ґ','Ё'=>'Ё','Є'=>'Є','Ї'=>'Ї','І'=>'І','і'=>'і','ґ'=>'ґ','ё'=>'ё','№'=>'№','є'=>'є','ј'=>'ј','Ѕ'=>'Ѕ','ѕ'=>'ѕ','ї'=>'ї','А'=>'А','Б'=>'Б','В'=>'В','Г'=>'Г','Д'=>'Д','Е'=>'Е','Ж'=>'Ж','З'=>'З','И'=>'И','Й'=>'Й','К'=>'К','Л'=>'Л','М'=>'М','Н'=>'Н','О'=>'О','П'=>'П','Р'=>'Р','С'=>'С','Т'=>'Т','У'=>'У','Ф'=>'Ф','Х'=>'Х','Ц'=>'Ц','Ч'=>'Ч','Ш'=>'Ш','Щ'=>'Щ','Ъ'=>'Ъ','Ы'=>'Ы','Ь'=>'Ь','Э'=>'Э','Ю'=>'Ю','Я'=>'Я','а'=>'а','б'=>'б','в'=>'в','г'=>'г','д'=>'д','е'=>'е','ж'=>'ж','з'=>'з','и'=>'и','й'=>'й','к'=>'к','л'=>'л','м'=>'м','н'=>'н','о'=>'о','п'=>'п','р'=>'р','с'=>'с','т'=>'т','у'=>'у','ф'=>'ф','х'=>'х','ц'=>'ц','ч'=>'ч','ш'=>'ш','щ'=>'щ','ъ'=>'ъ','ы'=>'ы','ь'=>'ь','э'=>'э','ю'=>'ю','я'=>'я' ); function utf2win($s) { global $ents; if(phpversion()>="4.1") { $s = htmlentities( $s, ENT_NOQUOTES, "UTF-8" ); $s = strtr( $s, array('<'=>'<','>'=>'>','&'=>'&','"'=>'"') ); } $len = strlen($s); $tgt = ''; for($i=0; $i<$len; $i++) { $c = $s[$i]; $x = ord($c); if($x<0x80) $tgt.=$c; elseif(($x & 0xC0) == 0xC0) { $n = 1; while( ($x & (0x40 >> $n)) > 0) $n++; $code = $x & (0x3F >> $n); for($k=1; $k<=$n; $k++) $code = ($code << 6) + (ord($s[$i+$k]) & 0x3F); $i += $n; $tgt .= '&#'.$code.';'; } else $tgt .= '?'; } $tgt = strtr( $tgt, $ents ); return $tgt; } function win2utf($s) { global $ents; $tgt = strtr( $s, array_flip($ents) ); if(phpversion()>="4.3") $tgt = html_entity_decode( $tgt, ENT_NOQUOTES, "UTF-8" ); return $tgt; }
|
|
|
|
« Последнее редактирование: 06.02.2007, 20:42:42 от Physicist »
|
Записан
|
|
|
|
|
smart
|
 |
« Ответ #36 : 06.02.2007, 21:43:19 » |
|
мне кажется переносы это уже лишнее, а что касается функции конвертации cp1251 в utf8, так она пробегала на днях на форуме... в принципе найти ее в инете не проблема...
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #37 : 06.02.2007, 21:50:28 » |
|
Текст с выравниваем justify и без переносов смотрится, на мой взгляд, жутко (особенно в достаточно узких абзацах). А выравнивание по левому краю хорошо только для английских текстов, в которых слова по-короче будут.
2smart: Знаю я такие «функции» — они, к сожалению, выкидывают все символы, отсутствующие в cp1251. А мой вариант переводит их в html-enitity, так что при обратном преобразовании всё возвращается на место.
|
|
|
|
|
Записан
|
|
|
|
|
smart
|
 |
« Ответ #38 : 06.02.2007, 21:58:41 » |
|
Знаю я такие «функции» — они, к сожалению, выкидывают все символы, отсутствующие в cp1251. я про преобразование 1251 в utf8, там это все корректно, если такого символа в исходной кодировке нет, то он и отображаться в исходной не будет...
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #39 : 07.02.2007, 09:37:11 » |
|
Расстановка переносов, как мне кажется, должна заботить производителей браузеров, но никак не разработчиков CMS. Согласен. Но что-то они не спешат с реализацией этого. А я привык работать с TeX'ом, поэтому меня не только распечатанные страницы сайтов приводят в ужас, но, порой, и страницы, набранные в ворде. А что касается узких колонок, то они с выравниванием по ширине и с переносами будут смотреться плохо из-за меняющегося от строки к строке расстояния между словами. Параметр justify нужно применять очень осторожно. А лучше - не применять вовсе, невиданных красот это не даст, в отличие от других способов аккуратно и чисто оформить текст.
Ну, не знаю. Мне, например, текст, выровненный по ширине, удобней читать не только в распечатанном виде, но и на экране. PS. Может быть это потому, что мне приходится читать статьи/документацию в формате pdf чаще, чем в html.
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #40 : 14.02.2007, 00:27:40 » |
|
Да, и правда, не удалось сделать мамбот «в одном флаконе». Поэтому пока выкладываю только версию для windows-1251. Итак, версия 2.0Возможности мамбота значительно расширились — в настройках содержится 50 параметров, среди которых добавились (по сравнению с предыдущей версией): - не разрывать слова при помощи неразрывного пробела / тега nobr / стиля white-space:nowrap;
- настраиваемые символы тире и короткого пробела;
- не разрывать номера телефонов;
- не разрывать числа, разбитые на разряды (например, 1 000 000);
- не разрывать двойные слова (например, два-три, из-за);
- не отрывать абревиатуру формы собственности от названия организации;
- различные автозамены символов;
- исправление некоторых пунктуационных ошибок;
- и многое другое.
2Mongoose: Версию для кодировки UTF-8 постараюсь сделать в кратчайшие сроки.
|
|
|
|
« Последнее редактирование: 20.02.2007, 09:48:57 от Physicist »
|
Записан
|
|
|
|
|
smart
|
 |
« Ответ #41 : 14.02.2007, 03:14:26 » |
|
Поэтому пока выкладываю только версию для windows-1251. еще раз респект, и новые идеи: 1. вроде бы забыл сокращения: "п.", "стр.", "ст." , "кор." "тел.", "о.", 2. нет единиц измерений "шт", "л", "кг", "ед", "г" 3. Привязку частиц, местоимений и коротких слов я бы разнес на разные параметры. 4. может быть стоит задуматься о некоем формате описания правил? чтобы не код мамбота постоянно править, а иметь некие профайлы для различных ситуаций? 5. Забыл реализовать п.15 из моих пожеланий (Заменять сноски 1, 2 и 3 в виде <sup>1</sup> и т.д. на ¹, ², ³ (коды &185;, &178;, &179))
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #42 : 20.02.2007, 09:47:04 » |
|
В мамботе обнаружилась одна маленькая неточность (вместо длинного &mdash тире выводится короткое &ndash, и неправильно кэшировались заросы к БД). Рекомендуется обновиться до версии 2.0.1.
|
|
|
|
« Последнее редактирование: 20.02.2007, 15:07:45 от Physicist »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #43 : 20.02.2007, 19:17:33 » |
|
Благодаря помощи xxl2k удалось выяснить, что в некоторых версиях php при работе мамбота возникает предупреждение «lookbehind assertion is not fixed length». Также, выяснилось, что при обработке мамботом заголовков модулей типа User может выводиться html-код — результат работы мамбота (это связано с тем, что при выводе заголовков таких модулей в файле /includes/frontend.htm.php они дополнительно обрабатываются функцией htmlspecialchars).
Всё это учтено в версии 2.0.2 мамбота.
|
|
|
|
|
Записан
|
|
|
|
|
Grey Ice
Гость
|
 |
« Ответ #44 : 20.02.2007, 19:19:48 » |
|
Спасибо за прекрасный мамбот. Можно попросить добавить проверку пробелов после точек и запятых и если их нет, то добавлять.
Например: 1) Бот выключен (оригинал текста): "Возвращаюсь где-то около пяти утра .Иду со стороны универмага ." 2) Бот включен: "Возвращаюсь где-то около пяти утра.Иду со стороны универмага." 3) Хочется: "Возвращаюсь где-то около пяти утра. Иду со стороны универмага."
Был удивлен, но бывает люди и так пишут, а точнее так пишут некоторые военные люди. Заранее благодарен.
|
|
|
|
|
Записан
|
|
|
|
Sedoy
Support Team
   
Репутация: +73/-10
Offline
Пол: 
Сообщений: 1108
Интересно,в какой кодировке пишут врачи?
|
 |
« Ответ #45 : 20.02.2007, 19:32:50 » |
|
> а точнее так пишут некоторые военные люди. ну если судить по данному форуму, а точнее вообще по рунету, то военные просто верх совершенства в русском 
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #46 : 21.02.2007, 21:36:21 » |
|
2Grey Ice: я сейчас как раз «коллекционирую», что нужно включить в версию 2.1.0. Думаю, проверку пробелов после точек и запятых сделаю. Лишь бы при этом числа (3,14) и элементы программирования (mywindow.show) не пострадали.  Если есть еще заказы предложения — пишите!
|
|
|
|
|
Записан
|
|
|
|
|
smart
|
 |
« Ответ #47 : 22.02.2007, 11:59:27 » |
|
и элементы программирования (mywindow.show) не пострадали. как вариант, предлагаю сделать поддержку некоего тега, позволяющего отключить обработку как всего текста, так и заданного фрагмента... например, что-то типа {typo off} и {notypo}{/notypo}
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #48 : 22.02.2007, 12:30:40 » |
|
как вариант, предлагаю сделать поддержку некоего тега, позволяющего отключить обработку как всего текста, так и заданного фрагмента... например, что-то типа {typo off} и {notypo}{/notypo}
Можно и так. Вот только не нравится мне в Joomla эта система с «квазитегами» — при удалении мамбота это всё всплывает наружу и приходится заново редактировать текст. Вообще в моих планах, когда мамбот будет полностью протестирован и «набит» функционалом, сделать на его основе плагин для TinyMCE — чтобы уже на этапе редактирования увидеть результат и изменить содержимое, если плагин где-то допустил ошибку. Хотя, мамбот, возможно, вещь более универсальная, т.к. далеко не всегда контент набирается в редакторе — это могут быть различные агрегаторы новостей, content_by_mail, различные blog-writer'ы на основе XML-RPC и т.д.
|
|
|
|
|
Записан
|
|
|
|
|
smart
|
 |
« Ответ #49 : 22.02.2007, 12:39:02 » |
|
Хотя, мамбот, возможно, вещь более универсальная, т.к. далеко не всегда контент набирается в редакторе — это могут быть различные агрегаторы новостей, content_by_mail, различные blog-writer'ы на основе XML-RPC и т.д. как вариант можно сделать мамбот, который будет цветом выделять рекомендуемые изменения, и если автор согласен, то по клику на какой-нибудь кнопке мамбот будет их физически выполнять над текстом и сохранять материал. это мне кажется будет более универсально и корректно...
|
|
|
|
|
Записан
|
|
|
|
|
Hermanni
Гость
|
 |
« Ответ #50 : 08.03.2007, 13:29:12 » |
|
Предлог "для" не привязывается к следующему за ним слову. Версия мамбота - 2.0.2, Joomla! - 1.0.12.
И еще: настройка, которая позволяет убирать пробел перед знаками препинания очень полезная и нужная. Но если текст содержит смайлики, то мамбот "приклеивает" их к предыдущему слову. Есть ли какие-то варианты решения данной проблемы?
|
|
|
|
« Последнее редактирование: 08.03.2007, 14:19:37 от Hermanni »
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #51 : 09.03.2007, 11:16:38 » |
|
Предлог "для" не привязывается к следующему за ним слову. Версия мамбота - 2.0.2, Joomla! - 1.0.12. Думаю, это не проблема. Просто я старался в основном учесть все одно- и двухбуквенные предлоги. И еще: настройка, которая позволяет убирать пробел перед знаками препинания очень полезная и нужная. Но если текст содержит смайлики, то мамбот "приклеивает" их к предыдущему слову. Есть ли какие-то варианты решения данной проблемы?
Это тоже решаемо — достаточно будет проверять символ после знака препинания (это должен быть пробел или конец текста).
|
|
|
|
|
Записан
|
|
|
|
|
temniy
|
 |
« Ответ #52 : 27.03.2007, 00:02:57 » |
|
Ложка дегтя.
Установленный и включенный бот создал просто ох.ую нугрузку на сервер. Вместо обычных 10% с моих сайтов - 100% загрузки CPU. Пришлось отключить. А жаль...
Все же куда предпочтительней был бы плагинчик, позволяющий менять код непосредственно в базе данных...
|
|
|
|
|
Записан
|
|
|
|
|
smart
|
 |
« Ответ #53 : 27.03.2007, 01:06:14 » |
|
Установленный и включенный бот создал просто ох.ую нугрузку на сервер. а кэширование, не спасло? Все же куда предпочтительней был бы плагинчик, позволяющий менять код непосредственно в базе данных... ну тогда я думаю не плагинчик, а просто выводить для админов этим же мамботом ссылочку "Применить изменения" и по клику, действительно сохранять текущий текст в базу...
|
|
|
|
|
Записан
|
|
|
|
|
discotime
Гость
|
 |
« Ответ #54 : 07.04.2007, 18:48:09 » |
|
как на счет того, чтобы кавычки около Аглийских букв оставались " а не заменялись на « ?
|
|
|
|
|
Записан
|
|
|
|
Маэстро
Осваиваюсь на форуме
 
Репутация: +0/-0
Offline
Сообщений: 70
|
 |
« Ответ #55 : 12.04.2007, 19:31:26 » |
|
У меня при установке всё отображается ?????? ... Я читал выше что нужно произвести перекодировку из CP1251 на UTF-8 . Даже видел какую то обработку, которая это делает. Но мне от этого как то не легче.. Слова типа, вот обработка для перекодиовки, мне как то не особо помогают.. что с ней делать то?
Не могли бы вы описать процедуру перекодировки, буду очень вам признателен.
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #56 : 12.04.2007, 23:13:51 » |
|
На UTF-8 сайтах мамбот работать не будет (пока!) хотя бы потому, что php не умеет работать с utf8 на уровне регулярных выражений. Да, были идеи, как это «обойти», но пока они не увенчались успехом.
|
|
|
|
|
Записан
|
|
|
|
Timon_Crazy
Завсегдатай
   
Репутация: +31/-4
Offline
Пол: 
Сообщений: 641
Лицензнаци
|
 |
« Ответ #57 : 18.05.2007, 09:19:38 » |
|
господа, вот что подумалось: 1) если текст меняется только при выводе то что будет при поиске? будут ли различие "длинный" "короткий тире", пробелы (разрывные, не разрывные) искаться то будет по базе, а там лежат оригиналы. 2) вывод поиска: он будет не красивый. или я ошибаюсь? 3) если вносить уже в базу "исправленный текст" то опять же как искать? пробелы, дефисы, тире, знаки минуса. получается надо переписывать поиск?
|
|
|
|
|
Записан
|
|
|
|
|
smart
|
 |
« Ответ #58 : 18.05.2007, 11:35:35 » |
|
господа, вот что подумалось: по всем пунктам ты прав, именно поэтому в этом топике уже обсуждалась затея сделать возможность сохранять изменения в материале после обработки его текста мамботом... @Physicist: может все таки реализуем данный вариант? Т.е. добавим отображение кнопки Сохранить для пользователей группы Паблишер и выше. А по клику на ней, будет производится обработка текста и сохранение материала?
|
|
|
|
|
Записан
|
|
|
|
Physicist
Support Team
   
Репутация: +179/-0
Offline
Пол: 
Сообщений: 1151
Рябов Денис
|
 |
« Ответ #59 : 18.05.2007, 11:56:40 » |
|
господа, вот что подумалось: 1) если текст меняется только при выводе то что будет при поиске? будут ли различие "длинный" "короткий тире", пробелы (разрывные, не разрывные) искаться то будет по базе, а там лежат оригиналы. 2) вывод поиска: он будет не красивый. или я ошибаюсь? 3) если вносить уже в базу "исправленный текст" то опять же как искать? пробелы, дефисы, тире, знаки минуса. получается надо переписывать поиск? А часто ли Вы при поиске вводите знаки препинания (и вводит ли кто-нибудь при этом дефис или неразрывный пробел через Alt+0151 или Alt+0160)? Да и нужно ли искать по знакам препинания? По-моему большинство поисковиков их выкидывает из запроса вместе со стоп-словами. А вот результаты поиска действительно было бы неплохо прогонять через мамбот. Я над этим подумаю. Кстати, версия мамбота 2.1 будет содержать также доработанные стандартные модули «Последние новости», «Популярное» и др., в которых содержимое обрабатывается через событие OnPrepareContent, что позволит пропускать их вывод в том числе через мамбот «Русская типографика». @Physicist: может все таки реализуем данный вариант? Т.е. добавим отображение кнопки Сохранить для пользователей группы Паблишер и выше. А по клику на ней, будет производится обработка текста и сохранение материала?
Я думаю, особых проблем с реализацией быть не должно. Вот только как это лучше реализовать — через отдельный php-скрипт (который будет ставиться вместе с мамботом) или написать отдельный компонент, который можно будет в дальнейшем нагружать другим функционалом? Да и ответственность в этом случае выше — нужно будет тщательно анализировать каждое обращение к БД на возможность к sql-инъекции.
|
|
|
|
« Последнее редактирование: 07.11.2008, 12:40:51 от Physicist »
|
Записан
|
|
|
|
|
smart
|
 |
« Ответ #60 : 18.05.2007, 12:17:38 » |
|
Вот только как это лучше реализовать — через отдельный php-скрипт (который будет ставиться вместе с мамботом) или написать отдельный компонент, который можно будет в дальнейшем нагружать другим функционалом? через компонент, при этом желательно предоставить интерфейс для сторонних разработчиков, чтобы можно было использовать алгоритмы типографера. Т.е. чтобы сторонние разработчики могли подключать и использовать ядро типографера в своих расширениях.
|
|
|
|
|
Записан
|
|
|
|
|