Mors Clamor, а его можно использовать без Action'ов, т.е. не как плагин к редактору, а как библиотеку, которой подаётся на вход строка, и она возвращает другую? Мне хотелось бы хранить исходники в сокращённом виде, а разворачивать их во время билда.
Мне интересно, как автор предполагает сокращать какие-нибудь атрибуты фреймворков, например, Vue директивы v-if, v-for, v-on и т.д. Не одной же html статикой будешь сыт.
alexalexes, да даже в одной html статике почти все остальные атрибуты нужно будет писать полностью. Получится усложнение инфраструктуры только ради того, чтобы не писать id= и class=.
alexalexes, существует много применений HTML, в принципе несовместимых с Vue.
Алексей Уколов, во-первых, есть набор кусков разметки, которые хотелось бы перенести без изменений, во-вторых, было написано: «если будут ещё плюшки, особенно настраиваемые, тем лучше».
FeST1VaL, у меня вот тоже первым вопросом в голове стало, сразу после прочтения поста))
ImagineTables реально - А ЗАЧЕМ тебе это?) и - ЧТО ЭТО ВООБЩЕ за дурацкая структура документа?
от куда ты нарыл этот кусок кода, блин?)) может оно там для компилятора/препроцессора так и нужно, блин!))
возьми обычный, нормальный Total Commander, в нём - Поиск > "с текстом", туда забей свои непонятные - "#my-div .card.info", и по всем файлам что найдёт, открой по быстрому в Sublime каком, там CTRL + H, заполни поля Find и Replace и тыкни - Replace All
Всё!)
но вот - не факт, что ты ЭТИМ - лучшее всё ж сделаешь, блин...
и - не факт, что у тебя есть доступ к исхдникам, а ты это на ходу в реалтайме хочешь делать...
но ты ж - нифига не объясняешь в своей постановке вопроса, детской...
к примеру, если это какой-нибудь PHP, то сделай что-нибудь аля:
$str = str_replace('#my-div .card.info', 'id="my-div" class="card info"', $str);
Иван Волков, FeST1VaL, ну что значит «дурацкая»? Её использовали раньше (не знаю, как сейчас) внутри своих десктопных продуктов в Symantec и ещё нескольких больших проектах. Я это знаю абсолютно точно.
Dmitry Bay, а YAML, по-вашему, придумали чтобы что? «сохранить пару кб»? Нет, это сделали, чтобы добиться бо́льшей выразительности. (Кстати, мне не кажется, что у разработчиков YAML это получилось, и если кому-то не нравится такой синтаксис HTML, пусть на здоровье пишет обычный).
Человек, с подачи которого в Symantec и ещё нескольких крупных компаниях использовали этот синтаксис, объяснил его популярность примерно так: когда пишешь тонны разметки, эти и другие мелочи очень помогают. Очевидно, что задающие эти вопросы люди не пишут тонны разметки, а значит они её генерируют из исполняемого кода. Ещё, поди, и вперемешку, как это у них водится. Я своё мнение об этом подходе оставлю при себе, а тут напишу (последний раз): HTML используется не только во фронтенде.
ImagineTables, эй, человек! тебе тут ВСЕ поголовно говорят, что ЭТО - Дурость!
тебе подсказали, КАК сделать и НЕ ДУРИТЬ головы ни себе, ни тем, кто твоей хрени потом возможно коснётся и будет ещё и дальше голову дурить - "А ХРЕНЛИ ТУТ ТАК СДЕЛАНО БЫЛО ВООБЩЕ О_О"
posthtml — под такой трансформ он буквально и создан. emmet тут не то, он работает с аббревиатурами (div#id.class) без угловых скобок. В posthtml пишешь плагин через tree.walk(), который переносит #id → id, .class → class. ANTLR оверкилл.