Title: ПСКОВ 2 на JVM Date: 2025-02-11 00:00 Category: News Slug: psk-jvm-item Lang: ru ![splash][splash] # Генерация отдельных страниц В январе сделал половину функциональности оригинального ПСКОВа на Kotlin для JVM, а именно: генерацию отдельных страниц HTML из Markdown. И ПСКОВ 1, и ПСКОВ 2 генерируют файлы HTML, которые отображаются идентично в веб-браузерах. Тем не менее, содержимое этих сгенерированных файлов отличается, т.к. ПСКОВ 1 использует [Showdown][showdown] для конвертации Markdown в HTML, а ПСКОВ 2 - [intellij-markdown][intellij-markdown]. Взглянем на описываемую разницу. Допустим, у нас есть следующая страница Markdown: ``` Simple page in **Markdown** to convert to **HTML**. | № | Parser | Language | |---|--- |--- | | 1 | [Showdown][showdown] | JavaScript | | 2 | [intellij-markdown][intellij-markdown] | Kotlin | [intellij-markdown]: https://github.com/JetBrains/markdown [showdown]: https://github.com/showdownjs/showdown ``` ПСКОВ 1 генерирует следующий файл HTML: ```

Simple page in Markdown to convert to HTML.

Parser Language
1 Showdown JavaScript
2 intellij-markdown Kotlin
``` ПСКОВ 2: ```

Simple page in Markdown to convert to HTML.

ParserLanguage
1ShowdownJavaScript
2intellij-markdownKotlin
``` А вот как оба файла отображаются в веб-браузере: ![result][result] Идентичное отображение двух различающихся файлов. Мой внутренний перфекционист, конечно, возмущён несоответствием, но мой внутренний прагматик считает эту разницу несущественной. # Февраль В феврале доведу конвертер межъязыкового диалекта до генерации Context. [intellij-markdown]: https://github.com/JetBrains/markdown [result]: ../../images/2025_psk-jvm-item_result.png [showdown]: https://github.com/showdownjs/showdown [splash]: ../../images/2025_psk-jvm-item.png