Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Додано пошук посилань, спливаючі підказки, автодоповнення та діагностику"v9.1.310.08.2026
- "Release LSP"v8.12.001.06.2026
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюЯкщо у вас є ідея щодо покращення цієї документації, будь ласка, долучіться, надіславши pull request на GitHub.
Посилання на документацію на GitHubСкопіювати документацію у форматі Markdown в буфер обміну
LSP-сервер Intlayer
Мовний сервер Intlayer — це реалізація Language Server Protocol (LSP), яка робить вашу IDE — і вашого ШІ-агента — обізнаними про Intlayer. Він пов’язує виклик на кшталт useIntlayer("home") із файлом .content.ts, який його оголошує, в обидва боки.
Можливості
Відкрийте таблицю в модальному вікні, щоб чітко переглянути всі дані
| Можливість | Комбінація клавіш | Що робить |
|---|---|---|
| Перейти до визначення | F12 / Cmd+Клік | Перейти від ключа словника або використання поля до його оголошення у файлі контенту |
| Знайти всі посилання | Shift+F12 | З файлу контенту показати всі місця виклику, що використовують цей ключ або поле |
| Спливаюча підказка | навести курсор | Переглянути поля словника або перекладене значення поля, не залишаючи файл |
| Автодоповнення | " ' ` . | Пропонувати оголошені ключі словників усередині ґетера та поля контенту після . або під час деструктуризації | |
| Діагностика | автоматично | Попереджати, коли ключ не оголошено в жодному файлі контенту |
Варто знати ще про дві особливості:
- Об’єднані словники — ключ, розділений між кількома файлами контенту, повертає по одному результату на файл, тож ви можете перейти до кожного оголошення.
- Підтримка монорепозиторіїв — сервер знаходить найближчий до кожного файлу
intlayer.config.*, тож кілька проєктів в одному робочому просторі отримують власні словники.
Підтримувані виклики
Ключ зчитується або з позиційного рядкового аргументу, або з об’єкта опцій ({ namespace }, { id }).
Відкрийте таблицю в модальному вікні, щоб чітко переглянути всі дані
| Бібліотека | Виклики |
|---|---|
| Intlayer | useIntlayer, getIntlayer |
| i18next / react-i18next | useTranslation, getFixedT, t, Trans |
| next-intl / use-intl | useTranslations, getTranslations, createTranslator |
| react-intl | formatMessage, FormattedMessage |
| Lingui | useLingui, t, Trans, _ |
| vue-i18n | useI18n |
Це працює для кожного пакета *-intlayer (next-intlayer, react-intlayer, vue-intlayer, svelte-intlayer, solid-intlayer, preact-intlayer, angular-intlayer, lit-intlayer, express-intlayer, hono-intlayer, fastify-intlayer, intlayer), а також для пакетів-адаптерів сумісності, які дозволяють зберегти наявний синтаксис i18n.
Словники читаються з результату збірки, тож виконайте npx intlayer build — або тримайте dev-сервер запущеним — щоб серверу було що розв’язувати.
Встановлення
Сервер постачається як бінарний файл intlayer-lsp у складі @intlayer/lsp:
Скопіюйте код у буфер обміну
Встановіть його глобально (npm install -g @intlayer/lsp), якщо вашому редактору потрібен intlayer-lsp у PATH — це стосується плагіна Claude Code та будь-якої конфігурації нижче, що викликає бінарний файл напряму.
Налаштування
Встановіть розширення Intlayer для VS Code. Мовний сервер входить до нього починаючи з v8.12.0 і запускається автоматично — налаштування не потрібне.
Інші можливості описано в документації розширення VS Code.
Cursor і Windsurf — форки VS Code, що використовують ту саму екосистему розширень. Встановіть розширення Intlayer для VS Code один раз, і сервер активується автоматично — налаштування не потрібне.
Intlayer постачає плагін для Claude Code, розміщений у репозиторії Intlayer. Він дає Claude Code справжнє розв’язання символів для ваших ключів словників замість відкоту до grep.
Помістіть бінарний файл у PATH, потім зареєструйте маркетплейс і встановіть плагін:
Скопіюйте код у буфер обміну
install також вмикає плагін. Перезапустіть Claude Code — мовні сервери завантажуються під час старту, тож до перезапуску плагін не діє.
Після цього Claude Code запускає сервер для файлів .ts, .tsx, .js, .jsx, .vue, .astro та .svelte і використовує goToDefinition, findReferences та hover під час навігації кодом.
Якщо перехід до визначення досі не працює, ваша версія Claude Code може приховувати інструмент LSP за прапорцем:
Скопіюйте код у буфер обміну
Zed має вбудовану підтримку LSP. Додайте сервер до користувацьких налаштувань:
Скопіюйте код у буфер обміну
Заповнювач "..." зберігає стандартні мовні сервери Zed поряд із сервером Intlayer.
За допомогою nvim-lspconfig зареєструйте власну конфігурацію сервера:
Скопіюйте код у буфер обміну
Після перезапуску Neovim gd на ключі словника виконує перехід до визначення, а gr — пошук посилань.
Скопіюйте код у буфер обміну
Скопіюйте код у буфер обміну
Будь-який редактор із підтримкою LSP може запускати @intlayer/lsp. Укажіть йому:
- Виконуваний файл —
npx @intlayer/lspабо бінарний файлintlayer-lsp - Транспорт — stdio (стандартний)
- Можливості —
definitionProvider,referencesProvider,hoverProvider,completionProvider(символи-тригери"'`.), push-діагностика,textDocumentSync: Incremental - Шаблони кореня —
intlayer.config.ts,intlayer.config.js,package.json
Точний формат конфігурації дивіться в документації LSP вашого редактора.
Примітка про ШІ-агентів у терміналі
Claude Code працює як повноцінний LSP-клієнт — див. вкладку вище.
OpenAI Codex і більшість інших термінальних інструментів не є LSP-клієнтами: вони читають і пишуть файли напряму. Запуск сервера сам по собі їм не допоможе; користь з’являється, коли він активний у супутньому редакторі, чий індекс агент може запитувати (Cursor Composer, Windsurf Cascade, Copilot Chat).
Як це працює
Для кожного файлу сервер знаходить найближчий intlayer.config.* і завантажує конфігурацію цього проєкту, щоб знайти скомпільовані словники. Конфігурація, словники та список вихідних файлів кешуються з коротким TTL і скидаються при зміні відстежуваного файлу контенту.
На запит сервер розбирає документ (через oxc) і аналізує позицію курсора:
- На рядку ключа (
useIntlayer("home")) → повертає кожен файл контенту, що оголошує цей ключ, із позицією на рядкуkey:. - На використанні поля (
content.title, деструктуризована властивість,t('path.to.field'),<Trans>, …) → зводить змінну назад до її словника й повертає відповідне поле у файлах контенту. - З файлу контенту → виконує зворотний пошук, переглядаючи джерела проєкту в пошуках місць виклику цього ключа або поля.
Усунення несправностей
Відкрийте таблицю в модальному вікні, щоб чітко переглянути всі дані
| Симптом | Ймовірна причина | Рішення |
|---|---|---|
| Нічого не відбувається | Сервер не запущено | Переконайтеся, що @intlayer/lsp встановлено і редактор його запускає |
| Працює в редакторі, але не в Claude Code | Плагін встановлено під час сесії | Перезапустіть Claude Code — мовні сервери завантажуються під час старту |
| Визначення для ключа не знайдено | Словники не зібрано | Виконайте npx intlayer build або запустіть dev-сервер |
| Усі ключі позначені як неоголошені | Конфігурацію не розв’язано | Перевірте, що intlayer.config.ts (або .js) є в корені проєкту |
| У монорепозиторії використано не той проєкт | Немає конфігурації в пакеті | Додайте intlayer.config.* до кожного пакета, що оголошує власний контент |
| Сервер падає при запуску | Застара версія Node.js | Потрібен Node.js ≥ 14.18 |
У VS Code сервер пише логи у Вигляд → Вивід → «Intlayer LSP» — це допомагає з’ясувати, яку конфігурацію було розв’язано і скільки словників знайдено.