[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Tiny MCE редактор и markdown-код
Страницы: 1, 2
mstdmstd
Всем привет,
В Framework 5.5.3/jquery/bootstrap приложении есть редактор содержимого(статьи и темплейты мейлов), где подключается
CK Editor или Tiny MCE редакторы в зависимости от настроек
Понадобилось реализовать поддержку markdown

Погуглив я нашел плагин https://www.tinymce.com/docs/plugins/textpattern/
Я его подключил( отключив все остальные настройки - сделал как в описании )
Посмотреть можно тут http://ec2-34-212-140-26.us-west-2.compute...item/edit?id=98

Но введя небольшой кусок markdown-кода :
An h1 header
============

Paragraphs are separated by a blank line.

2nd paragraph. *Italic*, **bold**, and `monospace`. Itemized lists
look like:

* this one
* that one
* the other one



И сохранив редактор в переоткрывшейся странице в tiny-редакторе я вижу что код введен одной строкой и редактировать его довольно неудобно.
1) Я чего-то недоставил ?
2) Или сохряняя нужно символ перевода строки менять на <br>?
3) Или если текст markdown, то выводить обычный textarea ?
4) Как-то иначе ?
Спасибо!

mstdmstd
вопрос по прежнему актуален, никто не делал редактор для markdown?
killer8080
Цитата (mstdmstd @ 27.09.2017 - 17:20)
никто не делал редактор для markdown?

Нет, не делал. Честно говоря вообще не понимаю зачем он нужен в wysiwyg unsure.gif
Arh
killer8080
Цитата
Честно говоря вообще не понимаю зачем он нужен в wysiwyg

А как тогда?

_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2
mstdmstd
Цитата (Arh @ 28.09.2017 - 06:13)
killer8080
Цитата
Честно говоря вообще не понимаю зачем он нужен в wysiwyg

А как тогда?

Так отож.
Меня смутило, что для tinyMCE я нашел плагин, но он непонятно как работает.
Мне казалось, добавить доп поле выбора RTF/Markdown и во втором случае выводить textarea со списком возможных Markdown-элементов . Или есть идеи лучше?
Игорь_Vasinsky
и настройки заполнил? https://www.tinymce.com/docs/plugins/textpa...attern_patterns

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
killer8080
Цитата (Arh @ 28.09.2017 - 10:13)
А как тогда?

Что тогда? markdown - это всего лишь упрощённый аналог bb-code. На кой он нужен в визуальном редакторе?
mstdmstd
Цитата (Игорь_Vasinsky @ 28.09.2017 - 10:01)
и настройки заполнил? https://www.tinymce.com/docs/plugins/textpa...attern_patterns

Да
mstdmstd
Цитата (killer8080 @ 28.09.2017 - 10:11)
Цитата (Arh @ 28.09.2017 - 10:13)
А как тогда?

Что тогда? markdown - это всего лишь упрощённый аналог bb-code. На кой он нужен в визуальном редакторе?

Так по вашему лучше добавить доп поле выбора RTF/Markdown и во втором случае выводить textarea со списком возможных Markdown-элементов ?
Arh
killer8080
А, я прочитал типа ты не понимаешь зачем сам wysiwyg нужен в принципе.

_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2
killer8080
Цитата (mstdmstd @ 28.09.2017 - 16:35)
Так по вашему лучше добавить доп поле выбора RTF/Markdown и во втором случае выводить textarea со списком возможных Markdown-элементов ?

нет, по моему markdown параллельно с wysiwyg бесполезная хрень. Мне не понятно чем вызвано
Цитата (mstdmstd @ 24.09.2017 - 15:22)
Понадобилось реализовать поддержку markdown

brevis
Цитата (mstdmstd @ 24.09.2017 - 15:22)
Понадобилось реализовать поддержку markdown

Нужно чтобы TinyMCE "отдавал" markdown или html?
Это плагин textpattern на выходе отдает html. А так, как markdown -- это plaintext, то в html он выглядит в одну строку. При отображении в редакторе.
Можно попробовать поискать какой-нибудь параметр в конфиге, чтобы заменять \n на <br>. Или делать это самому https://stackoverflow.com/a/14313101/1007620

_____________
Чатик в телеге
mstdmstd
Спасибо за наводку но у меня ошибка выполнения
Uncaught TypeError: Cannot read property 'add' of undefined

https://imgur.com/a/tnUEg

Полагая что статье более 5 лет и синтаксис изменился я гуглил но все равно получал ту же ошибку:

Uncaught TypeError: Cannot read property 'add' of undefined

https://imgur.com/a/oKRwq
А как правильно?
mstdmstd
Спасибо, так ошибка ушла, но и при работающем редакторое текст после сохранении отображается в одну строку
Я копирую из текстового редактора (чтобы исключить html-код через буфер обмена и сохраняю) текст :

# h1 Heading
## h2 Heading text
### h3 Heading
#### h4 Heading
##### h5 Heading
###### h6 Heading


и сохраяню без обработки ссимвлолов конца строки

Оставляю в обработчике:
    tinymce.init({
selector: "textarea", // change this value according to your HTML
plugin: 'textpattern,pagebreak,nonbreaking',


setup: function(editor) {
editor.on('BeforeSetContent', function(e) {
console.log('BeforeSetContent event e.content : ', e.content);
console.log('BeforeSetContent event e.initial : ', e.initial);
if (e.initial) {

var str = e.content.replace(/\r?\n/g, 'ZZZZZ');
console.log('BeforeSetContent event -1 str : ', str);

var str = e.content.replace(/\n/g, 'XXXXX');
console.log('BeforeSetContent event -2 str : ', str);

var str = e.content.replace(/\r/g, 'WWWWW');
console.log('BeforeSetContent event -3 str : ', str);
e.content = e.content.replace(/\r?\n/g, '<br />');

}
}
);
},

В JS консоль я вывожу строку, чтобы удостовериться что символы перевода строк отсутствует
и в контроле средствами php посимвольно вывожу содержимое строки с их кодами: https://imgur.com/a/3PWnY
То есть после символов “ing” сразу идет пробели и 2 символа ‘##’ новой строки.
Это при сохранении tinymce так рендерит текст ? У него еще какие-то настройки ?
Ранее я сохранял html текст и никаких продлем не было ...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.