Дело с разработкой нового движка движется, но я завис на этой теме (вернее уже отвис, но потратил на изучение и запиливание полных три дня - перфекционист блин во мне). В общем отказался от Markdown в виду его полной жопности для обычных смертных. Запилить что-то путное быстно с помощью Markdown тот еще квест. Но каплей переполнившей чашу терпения стал абсолютная геморность с добавлением своих кастомных тегов. Пробовал использовать Markdig из .net мира, но лишний раз убедился насколько дотнетчики суровые "челябинские парни" - они вместо документации предлагаю и используют исходные коды, которые стараются сделать максимально нечитабельными, чтобы другие разрабы не спиздили их интелектуальную собственность. Вернулся с старому доброму BBCode, но и тут засада, на весь .net мир всего 1 либа и пара любительских форков которые даже близко не дотягивают до нормальных парсеров с других я зыков. Но тут хотя бы с кодовой базой попроще - сидел разбирался все эти дни чтобы запилить что-то близкое что работает на этом форуме.
Немного впадая в детали - BBCode Parser это немного собирательное понятие у меня. Сам парсер всего лишь один элемент, но сюда еще входят Санитайзер, text-to-html formater (который делает некоторые нештяки). Но если на RoR это все делалось в одну строчку небольшой цепочкой команд, но на .net уже пришлось зарубиться на пару экранов кода с куче регулярок.
Но самое интересное - это сообщество .net Я успел задать пару вопросов в интернете и первый раз стал получать ответы "А че тут думать, напиши сам". Блин, всегда на том же Ruby, Python, PHP сразу предлагали готовые либы, которые написаны, оттестированы не одним челом, проверены в разных сложных ситуациях, а бля в .net пиши свой велосипед с нуля. Ну конечно, написать 10 строк не сложно, только потом придумать все варианты использования и протестить на это уйдет дохренища времени - про это почему-то никто не думает!!!! Ну так и получилось - самого кода минимум, зато отлавливание всяких левых тегов или незаэкронированных(или лишних заэкронированных символов) ушло несколько дней. И то я думаю что не все частные случаи проверены и работают. Почему-то на Python куда не плюнь везде либа отлаженная годами с кучей звезд на гитхабе. Ну я давно понял что .Net/Java это программеры не с нашей планеты - это ж энтерпрайз ептить!