1

Тема: Вставка после каждых N символов

Приветствую!
Подскажите пожалуйста как в статье после каждых 1500 символов вставить:
1) <!--nextpage->
2) строку из списка названий txt файла.

2

Re: Вставка после каждых N символов

Инструменты:
1. Массовое редактирование.
2. Произвольная вставка.

sergey777, если Вы являетесь пользователем платной версии ТК, получите полный доступ к форуму как написано выше топиков.

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

3

Re: Вставка после каждых N символов

да спасибо. Уже отправил запрос.
По обоим пунктам вижу возможность вставки только после N параграфов, но не символов. Версия 0.9.3. Или это в бета версии?

4

Re: Вставка после каждых N символов

sergey777 пишет:

По обоим пунктам вижу возможность вставки только после N параграфов, но не символов. Версия 0.9.3. Или это в бета версии?

Да, действительно эти задачи реализуются только по параграфам (что, в принципе логично - не разрывать же предложение или даже слово, что бы вставить строку\абзац\етс).
Хотя можно "выкрутиться" разными способами. Самый простой - через "море" (хотя он тоже слова не разрывает) и последующей автозаменой.
Если же "море" не устраивает - можно воспользоваться регулярками...

Подробней (если возникнет необходимость) расскажу после получения фуллдоступа на форум и переноса этого топика в соответствующий раздел.

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

5

Re: Вставка после каждых N символов

Море возможно подошло бы, но оно вставляется один раз на статью через н символов, а не через каждые н символов.
Параграф не подходит так как не фиксирован размер его в символах. параграф может состоять как из 20-50 символов так и из 500-1000 символов. Пример оглавление каждая строка в котором обрамлена в тег параграфа. Задача же вставка через каждые н символов статьи.

6

Re: Вставка после каждых N символов

sergey777 пишет:

Задача же вставка через каждые н символов статьи.

Вотоночтооказывается!!! А ведь изначально задача стояла не так.

В таком случае регуляркой разбрасываем уникальный признак по контенту, после чего его меняем на нужное. Или мб получится сразу, без промежуточного финта с уникальным признаком.
Только в этом случае в подсчёте будут считаться и символы html-форматирования. (хотя.. мб можно составить регулярку и без этого).



ЗЫ. Теперь у тебя есть полный доступ к форуму. :)

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

7

Re: Вставка после каждых N символов

Или давай так.  У тебя один пост (в котором >4500 символов) или таких в проекте много? Есть ли в нём html-форматирование? В чем, в каком виде-формате вообще изначально контент?

И самое интересное - почему ровно 1500 и категорически не устраивает нормальная логика - разбивка по абзацам?

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

8

Re: Вставка после каждых N символов

Может я не так выразился, но в первом посте написано "Подскажите пожалуйста как в статье после каждых 1500 символов вставить:"
Статьи довольно большого объема,  с помощью textkit хочу разбить их на страницы путем добавления <!--nextpage-> через каждые 1500 символов. Изначально контент импортируется из doc.
Почему ровно 1500? Можно и 1550 и 2000 не суть важно. Html теги в тексте пристутствуют.

9

Re: Вставка после каждых N символов

C регуляркой разобраться еще нужно, я в этом ничего не понимаю, не программист по образованию. Могли бы Вы помочь составить такую регулярку? Был бы премного благодарен. Возможно платно. Я только для этого и покупал textkit чтобы импортировать, разбить и экспортировать, и только и жду ответов как сделать вставку через каждые н символов чтобы приступить непосредственно к работе.

10

Re: Вставка после каждых N символов

sergey777 пишет:

Может я не так выразился, но в первом посте написано "Подскажите пожалуйста как в статье после каждых 1500 символов вставить:"

Сорри, это я не внимателен.  Поправил название топика.

sergey777 пишет:

Почему ровно 1500? Можно и 1550 и 2000 не суть важно. Html теги в тексте пристутствуют.

Ок, зайдём с другой стороны. Мне, что бы помочь, важно знать, не цифру (1500, 2000,..) а причину столь острой необходимости точного разбития по символам. Ведь так разбиваются слова и предложения.  Оно реально надо? Или ты просто не знаешь как расставить параграфы, по которым ТК и расставит некстпейдж?

sergey777 пишет:

Изначально контент импортируется из doc.

И это есть хорошо. Осталось понять как "оно там" - сплошняком ли, есть ли форматирование заголовками, необходимость точного разбития по символам и тд.
Может оно и ненужно вовсе оставлять огромаднейшие посты (4500 это больше чем дофига), а сразу побить их заголовками в ворде?
Может всё не настолько критично, а? Может можно пойти другим путём и добиться гораздо лучшего результата?

Что-то мне подсказывает, что можно сделать легко и правильно, а не пытаться рубанком вырезать матрёшку :)

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

11

Re: Вставка после каждых N символов

Основная причина разделения по символам а не параграфам в том что парагрф может состоять как из 50 символов так и из 2000.  это просто будет неудобно для посетителя сайта, например на одной страницы объем материала будет в разы (в десятки раз) меньше чем на другой странице, хотелось бы равномерного постраничного разбиения статьи. Статьи большие-многостраничные. Может сначала расставить параграфы так чтобы в одном параграфе было фиксированное кол-во символов например в диапазоне 1500-1700. Это приемлемо.  В материале нет разбиения по заголовкам то есть нет тег H1 ...  Побить заголовками такое большое кол-во статей и того немалого объема в ручную трудоемко мягко говоря,

12

Re: Вставка после каждых N символов

sergey777 пишет:

Основная причина разделения по символам а не параграфам в том что парагрф может состоять как из 50 символов так и из 2000.  это просто будет неудобно для посетителя сайта

Посетителям будет удобней читать разр<!--nextpage->ывы слов? wink

sergey777 пишет:

Может сначала расставить параграфы так чтобы в одном параграфе было фиксированное кол-во символов например в диапазоне 1500-1700

Как вариант. Только и это оч. большие параграфы. Параграф - 500-800 символов достаточно.

sergey777 пишет:

В материале нет разбиения по заголовкам то есть нет тег H1 ...  Побить заголовками такое большое кол-во статей и того немалого объема в ручную трудоемко мягко говоря,

Всё это легко делается в том же ворде. У него очень мощная система замены текста (с поддержкой форматирования и регулярок)

Теперь смотри. Оказывается строгость соблюдения этих цифр вовсе не нужна, а нужно удобство юзерам. Так ведь? Теперь оглянись на другие сайты. Где-нить ты видел, что бы были разрывы слов (ГСы не в счёт)? Нет конечно! Но тем не менее постраничная навигация присутствует. И представляешь - побита по абзацам :)

В общем как я вижу есть 2 варианта красивого и правильного решения "проблемы".
1. Побить в ворде на отдельные посты (автоматом расставив заголовок) через 1000-2500 зн \ 8-15 предложений. При этом на сайте это будет отдельными постами, а не через некстпейдж. (что приоритетней для СЕО)

2. Разбить на более мелкие параграфы (можно хоть вордом, хоть ТК) и уже по ним расставить некстпейдж.

Нормально? Что делаем дальше?

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

13

Re: Вставка после каждых N символов

Первый вариант мне больше нравится, но не знаю как Побить в ворде на отдельные посты (автоматом расставив заголовок) по 1000-2500 зн ? Можно это сделать в textkit пакетно? Файлов сотни.  Второй вариант не нашел ка разбить по параграфам по определенному кол-ву символов в textkit.

14

Re: Вставка после каждых N символов

Кстати у zebroid этот момент хорошо реализован http://zebroid.ru/page/rasstanovka-proi … o-koda#cut


Искать для вставки... - По какому атрибуту ориентироваться для вставки кода. Т.е. если выбран Абзац, то после указаного количества символов ищется первый попавшийся абзац и после него идёт вставка;

15

Re: Вставка после каждых N символов

Да и еще, есть ли такая возможность как у зебрум описано по ссылке Завершить когда закончились кода для вставки - в ином случае расстановка кодов начнется по второму кругу В textkit вставка кодов из списка идет по второму и по третьему кругу и тд

16

Re: Вставка после каждых N символов

sergey777 пишет:

Первый вариант мне больше нравится, но не знаю как Побить в ворде на отдельные посты (автоматом расставив заголовок) по 1000-2500 зн ?

CTRL+H -> F1 и вперёд :) (а ты думаешь как я смог написать то, что ниже?)
Делается в 3 прохода.
1. Отмечен чекбокс "подставочные знаки".
Найти:
*>. *>. *>. *>. *>. *>.   // кол-во *>.  = ко-ву предложений, после которых ставить заголовок. Обрати внимание - пробел после точки.

Заменить на:
^&^p***ЗАГОЛОВОК***^p // где "ЗАГОЛОВОК" - твой заголовок поста

2. Снимаем чекбокс "подставочные знаки".
Найти:
***ЗАГОЛОВОК***

Заменить на:
^& с отмеченным форматом "заголовок2" - кнопка "формат" - стиль - "заголовок2"

3. Найти
***  в формате "заголовок2"
Заменить на "пусто".

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

17

Re: Вставка после каждых N символов

sergey777 пишет:

Можно это сделать в textkit пакетно? Файлов сотни.  Второй вариант не нашел ка разбить по параграфам по определенному кол-ву символов в textkit.

Легко! Но опять же не по кол-ву символов (далась тебе эта кривизна), а по ко-ву предложений. (Хотя по кол-ву символов и проще).
Вначале побьём весь текст на параграфы.
С включёнными регулярками:
1. Найти:
.*?\. .*?\. .*?\. .*?\. .*?\. .*?\. .*?\. // кол-во абзацев. Тут конечно может можно придумать и более красивую регулярку, но насколько я ща смог... И опять же - пробел после экранированной точки (\. )!
заменить на
$&</p>
<p>

(делай через конструктор, для того чтобы переносы строк сохранились)

2. Найти:
^.*$
заменить на
<p>$&</p>

Дальше - инструмент "разбить записи" (или расстановка некстпейдж или\и вставка кода). И всё, собсно..
Красиво (более-менее) и правильно.

Небольшим недостатком реализаций что в ворде, что в ТК является не учитывание вопросительных и восклицательных предложений и предложений с троеточиями. Но это лишь придаст тексту естественность.
Багом же предложенных реализаций есть то, что если в тексте будет нумерованные списки с точками-пробелами или сокращения, то они учитываются. Но такова плата за автоматизацию.. Тут только вручную можно фиксить.

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

18

Re: Вставка после каждых N символов

sergey777 пишет:

как у зебрум

Не зебрум, а зеброид. Зебрум - это CMS.

sergey777 пишет:

есть ли такая возможность

Нету. Но да, надо. И вроде бы запланировано.

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

19

Re: Вставка после каждых N символов

Да я сейчас подумал может действительно не парится и проставить nextpage по параграфам. А почему ты думаешь, что для SEO лучше заголовками нежели pagination ?  Возможно ли автоматическая расстановка заголовков, где заголовок=Первые N слов из первого предложения разбиваемой части?

20

Re: Вставка после каждых N символов

sergey777 пишет:

Да я сейчас подумал может действительно не парится и проставить nextpage по параграфам.

По трудоёмкости практически не отличается от разбивки на посты. Но результат в последнем случае лучше (ИМХО) :)

sergey777 пишет:

А почему ты думаешь, что для SEO лучше заголовками нежели pagination ?

Есть мнение, что ПСы понимают, где один пост, где несколько. И таким образом в выдаче покажут или один или несколько. Что лучше? ;)

sergey777 пишет:

Возможно ли автоматическая расстановка заголовков, где заголовок=Первые N слов из первого предложения разбиваемой части?

Конечно! См "разбить записи".

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

21

Re: Вставка после каждых N символов

Спасибо за помощь, на счет "разбить записи" не совсем понял. Она разбивает статью на мелкие статьи и все. Но мне то нужно проставить заголовки, где заголовок=Первые N слов из первого предложения разбиваемой части, чтобы потом на первой странице сформировалось оглавление из этих заголовков. Как же сделать? Я так понял имеешь в виду такое оглавление лучше чем pagination.  Если в textkit просто разбит статью на мелкие записи то как из соединить, нужна же навигация между ними?

Отредактировано sergey777 (17.08.2011 12:54:52)

22

Re: Вставка после каждых N символов

sergey777 пишет:

Она разбивает статью на мелкие статьи и все.

Ну у статьи-то ОБЯЗАН быть заголовок. Этот инструмент его и делает. Причем может делать разными способами.
Открой его уже и посмотри что в нём есть.

sergey777 пишет:

Если в textkit просто разбит статью на мелкие записи то как из соединить, нужна же навигация между ними?

Название поста. Часть 1.
Название поста. Часть 2.
Название поста. Часть 3.

Чем не навигация? Ссылки надо? Ну это уже в свойства темы*. А в ТК тогда главное, что бы диапазон дат одного поста не перекрывался с другим. Делов то :)

UPD.
* Сорри, я всё за ВП думаю :) Там никаких лишних телодвижений для этого не надо.
В принципе в любом двиге ничего больше не надо. Но если очень хочется вставить навигацию в пост - в ТК это легко!

Первым делом проверяем даты (по идее они будут правильно расставлены, но проверить надо).
Потом макросами %next_url% %previous_url% или %next_link% %previous_link% и %next_title%  %previous_title% расставляем навигацию

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК

23

Re: Вставка после каждых N символов

Спасибо. Догнал. :) Есть ли возможность вставки оглавления?

Отредактировано sergey777 (17.08.2011 14:33:50)

24

Re: Вставка после каждых N символов

не думал что так туго будет даваться эта программа. забил я эту строку в меню вставка кода - ввести произвольный код - %next_link% %previous_link% %next_title%  %previous_title%     
в итоге в конце записи появилось: 
<a href="" title="Название следующей записи">Название следующей записи</a> <a href="" title="Название предыдущей записи">Название предыдущей записи</a> Название следующей записи  Название предыдущей записи
Когда экспортируешь это добро в джумлу они становятся ссылками ведущими на главную страницу.

25

Re: Вставка после каждых N символов

sergey777 пишет:

Когда экспортируешь это добро в джумлу они становятся ссылками ведущими на главную страницу.

ну потому, что:

sergey777 пишет:

<a href=""

Ты же урл не вставил.

Как правильно задавать вопросы вообще и у нас в частности

Я не разработчик ТК