Импорт форматирования с Google Docs (нужны тесты!), предпросмотр и другие новые плюшки stories.andreymal.org

+94
andreymalв блоге IT Pony!10 июля 2017, 19:30
Были вот такие жалобы:
Спойлер«А можно чуть конкретнее? — Основная проблема в отсутствии совместимости с документами ворд\гуглдок. Не понимает программа разметку, и это очень напрягает при выкладывании больших фанфиков. Нет той же самой функции превью, чтобы было видно, как текст будет выглядеть вживую. Я понимаю, что портал возведен и поддерживается энтузиастами своего дела, за что им глубокий поклон, но увы, пока редактор сторисов откровенно слаб и неудобен.» — Gedzerath«Как на табун перенести текст с сохранением пробелов и курсива?»
«На доках текст разделен, стоит копирнуть на сториз/табун - все в одну кучу.»

На этих выходных у меня дошли руки поработать над этим.

Теперь при копировании текста из Google Docs (или других приложений, умеющих пихать HTML-код в буфер обмена) и его вставке в поле ввода главы будет вставляться готовый HTML-код для сайта с сохранением форматирования.

copy
paste
Стоит иметь в виду, что из-за того, что всякие гуглдоки выпендриваются и не используют семантическую разметку, местами форматирование всё-таки слетит (например, очень проблематично различать заголовки и просто увеличенный текст), но всё же переносить текст с гуглдоков теперь должно быть сильно легче. Принимаются документы, в которых форматирование вставляется криво, может, даже сделаю фиксы для них.

Если понадобится вставить без HTML-кода, можно сперва вставить в Блокнот, а из него уже скопировать в поле ввода.

Оно может не работать в старых браузерах, а Edge не умеет в юникод: я поддерживаю эту фичу только в последних версиях Chrome, Firefox и Safari.

Вообще я начал подумывать над впиливанием какого-нибудь WYSIWYG-редактора вместо нынешнего markItUp, но все просмотренные мной оказались на первый взгляд говном (в том числе популярные TinyMCE и CKEditor), а писать свой долго. Расскажите, что вы об этом думаете и нужно ли оно?

Добавлен предпросмотр глав и комментариев. Так как главы бывают очень длинные, то, чтобы не скроллить до нужного места и не путаться, можно выделить кусок текста, который нужно предпросмотреть, и предпросмотреть только его.
Спойлер

Заголовки глав теперь необязательны. Это позволит избавить рассказы, имеющие одну главу, от петросянства вида «Глава первая и единственная». Если заголовок не указан, то он не отображается при чтении рассказа. В местах, где заголовок всё-таки требуется (RSS, уведомления и т.п.), подставляется название рассказа или заглушка «Глава N».

По сайту раскидано больше ссылок на редактирование главы. Для удобства. А из формы редактирования главы можно перейти к чтению главы через ссылку в заголовке предпросмотра.

Сортировка результатов поиска по дате теперь сортирует таки по дате. Раньше сортировала по id рассказов. (Сортировка по рейтингу по-прежнему не работает, потому что голосов слишком мало).

Исходники:
https://github.com/andreymal/mini_fiction
https://github.com/andreymal/stories.andreymal.org

Этот пост на stories.andreymal.org

38 комментариев

Я, конечно, говнокодю тут чуть ли не медленнее чем Орхи, но ради приличия сообщу, что планирую переключиться на другие задачи вроде перепиливания бэкенда или допиливания смайлопака, так что в ближайшее время завозить плюшек сюда, наверно, больше не буду
andreymal
0
Комментарий съели параспрайты
Вопрос, чисто интереса ради(хотелка случайно образовавшаяся при пользовании FB ридеда), а можно ли прикрутить OPDS-каталог? Важность данной функции ниже плинтуса, но давно оценив данную функцию(Аве флибуста), решил поинтересоваться о сложности реализации, вдруг кому пригодиться.
Hoopick
0
Хз че это) Когда почитаю про это в гуглах и википедиях, тогда видно будет, но в задачи на будущее записал
andreymal
0
Делать им нефиг, есть же человечецкий JSON, нет же, надо было ATOM натянуть =/
badunius
0
Кстати, насчёт «той» библиотеки: я там недавно обновлений и несколько фиксов завёз… И до сих пор ноль реакции, даже нафиг никто не послал
andreymal
0
Когда Табун на Расте сделаешь?
0x1042E
0
Были слухи, что async/await в 2018-м завезут, вот тогда и сделаю
andreymal
0
А сам не смог бы async/await сделать?)
0x1042E
0
Я могу хоть свой язык программирования и свою ОС сделать, только если я всё буду делать сам, то новый табун появится лет через сто)
andreymal
+1
Так зачем свой? Ты сам мне говорил что нужно Раст развивать.
0x1042E
+1
Всё равно я буду делать это слишком долго, 2018-й наступит быстрее)
andreymal
+1
А пока можешь подготавливать фронт-енд.
0x1042E
0
Спасибо, очень полезная штука.
Я как раз из гуглдоков всё и переношу.
Randy1974
0
Каких-то полгода назад я и думать не думал, что текстовые документы могут причинять столько боли при хранении и переносе. ТЕКСТОВЫЕ, МАТЬ ВАШУ, ДОКУМЕНТЫ, МЛЯ!!!
Termator
+1
Текстовые — и не могут если юзать только UTF-8 без BOM и \n, но вот жирный-курсив-зачёркивания-выравнивание-шрифт-отступы-междустрочный-интервал-колонки-таблицы-картинки это уже совсем не текстовые)
andreymal
+1
Элементарно, Ватсон! Дома — ноут с kUbuntu и LibroOffice, в институте — комп с Windows и MS Word. Times New Roman, 14 там не совпадает с Times New Roman, 14. К тому же, во всех формулах, например, все буквы «фи» чудеснейшим образом менялись на пустые квадратики
Termator
0
Добавил две дополнительные кнопочки в панельку над рассказом.

Первая включает выравнивание по ширине и переносит слова по слогам, как на фикбуке.
Спойлер

Вторая специально для любителей бумажных книжек заменяет няшные интервалы между абзацами на уродливую «красную строку», зато как в бумажных книжках и согласно «нормам оформления художественного текста»
Спойлер
Естественно, это работает только для правильно оформленных глав; те, кто не читает справку и отбивает начала строк обычными пробелами — горите в аду

Статус кнопочек запоминается в вашем браузере (не в аккаунте)
andreymal
+3
Переделал вставлялку HTML-кода с гуглодоков. Проверьте, должны были исправиться некоторые косяки. Те, у кого всё работало, тоже проверьте, а то могли появиться новые косяки :)
andreymal
+2
Пинок в ленту для тех, кто вчера рано ложился спать)
andreymal
0
— С давних времён первой публикации на сториесе, сразу пишу текст с тегами где надо и храню его в таком же виде. Единственный способ что-то не угробить при публикации. Но мысль занятная, хотя вордовские файлы впихивают изрядное количество лишних тегов тоже.
Проблема начинается при копировании из ОупенОфиса.
DxD2 (ред.)
+1
Используй не OpenOffice, а LibreOffice.
Mainframe
0
— Не могу, на нём частично оборот документов в офисе идёт, в добавок модули проверки орфографии и пунктуации в Либре оставляют желать лучшего.
DxD2
0
А можно подробнее? Я всегда думал, что Опен и Либра одинаковы и совместимы чуть менее чем полностью
andreymal
0
— Некоторое время они были одинаковыми (одинаково корявыми), но потом в Оупен и Либра часть каких-то внутренних моментов исправляли по разному. В итоге большая часть расширений Оупена работает только в нём, а в Либре аналогов или нет, или они довольно куцые и пропускают больше чем аналоги в Оупене. Часто сохранённые в Либре файлы вели себя некорректно в Оупене и наоборот — в частности текстовые и таблицы. Причина не понятна, или какой-то баг контента или реально рандомная несовместимость пакетов. Либре обновляясь ловила непредсказуемые глюки. И пусть их правили следующим патчем, сохранить документ который потом не откроется — не очень приятно. Чтобы не ломать себе голову — использую Оупен только в связке с 2003 вордом. С Либрой больше возиться не захотелось.
К тому же в момент знакомства с нею она довольно плохо вела себя в среде виндоус. Так что выбор пал на то, что и так уже использовали для внутренней документации в офисе.
DxD2
0
— Кстати, фанфики со сториза через снап-сшот некоторой давности или временами подгружаются? А то смотрю на версии и почему-то кажется что на сториесе присутствуют и более ранние правки, чем сейчас на новом лежат.
DxD2
0
Давности, последний раз загружалось в апреле
andreymal
0
— Ага, ясно, значит июнь-июль правки там и правда отсутствуют, не показалось. Надо будет тогда как-то собраться и внести обновления какие скопились и потом уже дополнять новым.
DxD2
0
— Аватарка не добавляется… странно…
Но так в целом начинаю переезд постепенно.
DxD2
0
Эм, у тебя в ссылке на форум стоит ссылка на табун, вот на неё и ругалось. Стёр — аватарка тебе вроде поставилась
andreymal
0
— Спасибо!!! Ого! Круто, буду знать. Пока ещё осваиваюсь и принаряжаю свой профиль.
Кстати, а новый снапшот со сториза будет в будущем или который был уже последний?
DxD2 (ред.)
0
Хз
andreymal
0
— Окей, тогда буду постепенно вносить скопившиеся правки в тексты… Ещё раз спасибо!
DxD2
0
— При поиске фанфиков с восклицательным знаком в названии или двоеточием, выводится:
Здесь пока ничего нет
или
Кажется, есть синтаксическая ошибка в запросе
DxD2
0
andreymal
0
— А, понятно, всё фанфики нашлись. Спасибо!
DxD2
0
Вообще-то я ждал наезд «какого хрена это не упомянуто на самом сайте» )
andreymal
0
А что, так тоже можно было...?
Ну если всё работает… то и отлично. Главное что нашлось, добавилось и теперь мой список избранного на месте. Останется только перенести тексты или попробовать грузить их с Гуглодока. Благо там их просто навалом (собственно полный бекап)
DxD2
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.