diff --git a/content/7.blog/21.shiki-v1.md b/content/7.blog/21.shiki-v1.md index 8491592ce..227b00be7 100644 --- a/content/7.blog/21.shiki-v1.md +++ b/content/7.blog/21.shiki-v1.md @@ -118,7 +118,7 @@ Shiki также получил [совершенно новый сайт док [Twoslash](https://github.com/twoslashes/twoslash) — это инструмент интеграции для извлечения информации о типе из [TypeScript Language Services](https://github.com/microsoft/TypeScript/wiki/Using-the-Language-Service-API) и генерации в ваш сниппет кода. По сути, он делает статический фрагмент кода похожим на редактор VS Code. Он создан [Orta Therox](https://github.com/orta) для [сайта документации TypeScript](https://github.com/microsoft/TypeScript-Website), вы можете найти [исходный код здесь](https://github.com/microsoft/TypeScript-Website/tree/v2/packages/ts-twoslasher). Orta также создал [интеграцию Twoslash для версий Shiki v0.x](https://github.com/shikijs/twoslash). Тогда у Shiki [не было надлежащей системы плагинов](https://github.com/shikijs/shiki/issues/380), из-за чего `shiki-twoslash` приходилось создавать как оболочку над Shiki, что немного усложняло настройку, поскольку существующие интеграции Shiki не работали напрямую с Twoslash. -Мы также воспользовались шансом пересмотреть интеграции Twoslash, когда переписывали Shikiji, попробовать ["dog-fooding"](https://en.wikipedia.org/wiki/Eating_your_own_dog_food) и проверить расширяемость. С новым внутренним HAST мы можем [интегрировать Twoslash как плагин-трансформер](https://shiki.style/packages/twoslash), что делает его работающим везде, где работает Shiki, а также тспользовать в виде композабла с другими трансформерами. +Мы также воспользовались шансом пересмотреть интеграции Twoslash, когда переписывали Shikiji, попробовать ["dog-fooding"](https://en.wikipedia.org/wiki/Eating_your_own_dog_food) и проверить расширяемость. С новым внутренним HAST мы можем [интегрировать Twoslash как плагин-трансформер](https://shiki.style/packages/twoslash), что делает его работающим везде, где работает Shiki, а также использовать в виде композабла с другими трансформерами. Далее мы начали думать, что, вероятно, сможем заставить Twoslash работать на [nuxt.com](/), веб-сайте, который вы читаете. nuxt.com под капотом использует [Nuxt Content](https://github.com/nuxt/content), и в отличие от других инструментов документирования, таких как VitePress, одним из преимуществ Nuxt Content является то, что он может обрабатывать динамический контент и работать на распределенных серверах. Поскольку Twoslash полагается на TypeScript, а также на гигантский граф типов модулей из ваших зависимостей, было бы не идеально отправлять все эти вещи на периферийные сервера или в браузер. Звучит сложно, но вызов принят!