@intlayer/docs 9.2.0 → 9.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/blog/ar/index.md +1 -1
- package/blog/ar/rag_powered_documentation_assistant.md +1 -1
- package/blog/de/index.md +1 -1
- package/blog/en/index.md +1 -1
- package/blog/en-GB/index.md +1 -1
- package/blog/es/index.md +1 -1
- package/blog/fr/index.md +1 -1
- package/blog/hi/index.md +1 -1
- package/blog/id/index.md +1 -1
- package/blog/it/index.md +1 -1
- package/blog/ja/index.md +1 -1
- package/blog/ko/index.md +1 -1
- package/blog/pl/index.md +1 -1
- package/blog/pl/rag_powered_documentation_assistant.md +1 -1
- package/blog/pt/index.md +1 -1
- package/blog/ru/index.md +1 -1
- package/blog/uk/index.md +1 -1
- package/blog/vi/index.md +1 -1
- package/blog/zh/index.md +1 -1
- package/dist/cjs/_virtual/_rolldown/runtime.cjs +1 -2
- package/dist/cjs/authors2.cjs +0 -1
- package/dist/cjs/common.cjs +24 -1
- package/dist/cjs/common.cjs.map +1 -1
- package/dist/cjs/generated/blog.entry.cjs +35 -6
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +35 -6
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs +35 -6
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs +35 -6
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/esm/common.mjs +24 -1
- package/dist/esm/common.mjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +35 -6
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +35 -6
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs +35 -6
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs +35 -6
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/docs/ar/bundle_optimization.md +58 -25
- package/docs/ar/configuration.md +10 -10
- package/docs/ar/interest_of_intlayer.md +24 -22
- package/docs/ar/intlayer_with_express.md +1 -1
- package/docs/ar/intlayer_with_svelte_kit.md +1 -1
- package/docs/ar/intlayer_with_tanstack+solid.md +5 -3
- package/docs/ar/intlayer_with_tanstack.md +5 -3
- package/docs/ar/live-sync.md +4 -0
- package/docs/ar/lsp.md +114 -175
- package/docs/ar/readme.md +25 -25
- package/docs/bn/bundle_optimization.md +58 -25
- package/docs/bn/configuration.md +10 -10
- package/docs/bn/interest_of_intlayer.md +24 -22
- package/docs/cs/bundle_optimization.md +58 -25
- package/docs/cs/configuration.md +10 -10
- package/docs/cs/interest_of_intlayer.md +24 -22
- package/docs/de/bundle_optimization.md +58 -25
- package/docs/de/configuration.md +10 -10
- package/docs/de/interest_of_intlayer.md +24 -22
- package/docs/de/intlayer_with_svelte_kit.md +1 -1
- package/docs/de/intlayer_with_tanstack+solid.md +5 -3
- package/docs/de/intlayer_with_tanstack.md +5 -3
- package/docs/de/live-sync.md +4 -0
- package/docs/de/lsp.md +111 -172
- package/docs/de/readme.md +24 -24
- package/docs/en/bundle_optimization.md +51 -23
- package/docs/en/configuration.md +10 -10
- package/docs/en/interest_of_intlayer.md +24 -22
- package/docs/en/intlayer_with_svelte_kit.md +1 -1
- package/docs/en/intlayer_with_tanstack+solid.md +5 -3
- package/docs/en/intlayer_with_tanstack.md +5 -3
- package/docs/en/live-sync.md +4 -0
- package/docs/en/lsp.md +109 -170
- package/docs/en/readme.md +24 -24
- package/docs/en-GB/bundle_optimization.md +58 -25
- package/docs/en-GB/configuration.md +10 -10
- package/docs/en-GB/interest_of_intlayer.md +24 -22
- package/docs/en-GB/intlayer_with_svelte_kit.md +1 -1
- package/docs/en-GB/intlayer_with_tanstack+solid.md +5 -3
- package/docs/en-GB/intlayer_with_tanstack.md +5 -3
- package/docs/en-GB/live-sync.md +4 -0
- package/docs/en-GB/lsp.md +109 -170
- package/docs/en-GB/readme.md +24 -24
- package/docs/es/bundle_optimization.md +58 -25
- package/docs/es/configuration.md +10 -10
- package/docs/es/interest_of_intlayer.md +24 -22
- package/docs/es/intlayer_with_svelte_kit.md +1 -1
- package/docs/es/intlayer_with_tanstack+solid.md +5 -3
- package/docs/es/intlayer_with_tanstack.md +5 -3
- package/docs/es/live-sync.md +4 -0
- package/docs/es/lsp.md +114 -175
- package/docs/es/readme.md +24 -24
- package/docs/fr/bundle_optimization.md +58 -25
- package/docs/fr/configuration.md +10 -10
- package/docs/fr/interest_of_intlayer.md +24 -22
- package/docs/fr/intlayer_with_svelte_kit.md +1 -1
- package/docs/fr/intlayer_with_tanstack+solid.md +5 -3
- package/docs/fr/intlayer_with_tanstack.md +5 -3
- package/docs/fr/live-sync.md +4 -0
- package/docs/fr/lsp.md +110 -171
- package/docs/fr/readme.md +24 -24
- package/docs/hi/bundle_optimization.md +58 -25
- package/docs/hi/configuration.md +10 -10
- package/docs/hi/interest_of_intlayer.md +24 -22
- package/docs/hi/intlayer_with_express.md +1 -1
- package/docs/hi/intlayer_with_svelte_kit.md +1 -1
- package/docs/hi/intlayer_with_tanstack+solid.md +5 -3
- package/docs/hi/intlayer_with_tanstack.md +5 -3
- package/docs/hi/live-sync.md +4 -0
- package/docs/hi/lsp.md +113 -174
- package/docs/hi/readme.md +24 -24
- package/docs/id/bundle_optimization.md +58 -25
- package/docs/id/configuration.md +10 -10
- package/docs/id/interest_of_intlayer.md +24 -22
- package/docs/id/intlayer_with_svelte_kit.md +1 -1
- package/docs/id/intlayer_with_tanstack+solid.md +5 -3
- package/docs/id/intlayer_with_tanstack.md +5 -3
- package/docs/id/live-sync.md +4 -0
- package/docs/id/lsp.md +113 -174
- package/docs/id/readme.md +24 -24
- package/docs/it/bundle_optimization.md +58 -25
- package/docs/it/configuration.md +10 -10
- package/docs/it/interest_of_intlayer.md +24 -22
- package/docs/it/intlayer_with_svelte_kit.md +1 -1
- package/docs/it/intlayer_with_tanstack+solid.md +5 -3
- package/docs/it/intlayer_with_tanstack.md +5 -3
- package/docs/it/live-sync.md +4 -0
- package/docs/it/lsp.md +115 -176
- package/docs/it/readme.md +24 -24
- package/docs/ja/bundle_optimization.md +58 -25
- package/docs/ja/configuration.md +10 -10
- package/docs/ja/interest_of_intlayer.md +24 -22
- package/docs/ja/intlayer_with_tanstack+solid.md +5 -3
- package/docs/ja/intlayer_with_tanstack.md +5 -3
- package/docs/ja/live-sync.md +4 -0
- package/docs/ja/lsp.md +113 -174
- package/docs/ja/readme.md +24 -24
- package/docs/ko/bundle_optimization.md +58 -25
- package/docs/ko/configuration.md +10 -10
- package/docs/ko/interest_of_intlayer.md +24 -22
- package/docs/ko/intlayer_with_svelte_kit.md +1 -1
- package/docs/ko/intlayer_with_tanstack+solid.md +5 -3
- package/docs/ko/intlayer_with_tanstack.md +5 -3
- package/docs/ko/live-sync.md +4 -0
- package/docs/ko/lsp.md +112 -173
- package/docs/ko/readme.md +24 -24
- package/docs/nl/bundle_optimization.md +58 -25
- package/docs/nl/configuration.md +10 -10
- package/docs/nl/interest_of_intlayer.md +24 -22
- package/docs/pl/bundle_optimization.md +58 -25
- package/docs/pl/configuration.md +10 -10
- package/docs/pl/interest_of_intlayer.md +4 -2
- package/docs/pl/intlayer_with_svelte_kit.md +1 -1
- package/docs/pl/intlayer_with_tanstack+solid.md +5 -3
- package/docs/pl/intlayer_with_tanstack.md +5 -3
- package/docs/pl/live-sync.md +4 -0
- package/docs/pl/lsp.md +115 -176
- package/docs/pl/readme.md +24 -24
- package/docs/pt/bundle_optimization.md +58 -24
- package/docs/pt/configuration.md +10 -10
- package/docs/pt/interest_of_intlayer.md +24 -22
- package/docs/pt/intlayer_with_svelte_kit.md +1 -1
- package/docs/pt/intlayer_with_tanstack+solid.md +5 -3
- package/docs/pt/intlayer_with_tanstack.md +5 -3
- package/docs/pt/live-sync.md +4 -0
- package/docs/pt/lsp.md +113 -174
- package/docs/pt/readme.md +24 -24
- package/docs/ru/bundle_optimization.md +58 -25
- package/docs/ru/configuration.md +10 -10
- package/docs/ru/interest_of_intlayer.md +24 -22
- package/docs/ru/intlayer_with_nextjs_14.md +1 -1
- package/docs/ru/intlayer_with_nextjs_15.md +1 -1
- package/docs/ru/intlayer_with_svelte_kit.md +1 -1
- package/docs/ru/intlayer_with_tanstack+solid.md +5 -3
- package/docs/ru/intlayer_with_tanstack.md +5 -3
- package/docs/ru/live-sync.md +4 -0
- package/docs/ru/lsp.md +112 -173
- package/docs/ru/readme.md +24 -24
- package/docs/tr/bundle_optimization.md +58 -25
- package/docs/tr/configuration.md +10 -10
- package/docs/tr/interest_of_intlayer.md +24 -22
- package/docs/tr/intlayer_with_svelte_kit.md +1 -1
- package/docs/tr/intlayer_with_tanstack+solid.md +5 -3
- package/docs/tr/intlayer_with_tanstack.md +5 -3
- package/docs/tr/live-sync.md +4 -0
- package/docs/tr/lsp.md +113 -174
- package/docs/tr/readme.md +24 -24
- package/docs/uk/bundle_optimization.md +58 -25
- package/docs/uk/configuration.md +10 -10
- package/docs/uk/interest_of_intlayer.md +4 -2
- package/docs/uk/intlayer_with_svelte_kit.md +1 -1
- package/docs/uk/intlayer_with_tanstack+solid.md +5 -3
- package/docs/uk/intlayer_with_tanstack.md +5 -3
- package/docs/uk/live-sync.md +4 -0
- package/docs/uk/lsp.md +113 -174
- package/docs/uk/per_locale_file.md +1 -1
- package/docs/uk/readme.md +24 -24
- package/docs/ur/bundle_optimization.md +58 -25
- package/docs/ur/configuration.md +10 -10
- package/docs/ur/interest_of_intlayer.md +24 -22
- package/docs/vi/bundle_optimization.md +58 -25
- package/docs/vi/configuration.md +10 -10
- package/docs/vi/interest_of_intlayer.md +24 -22
- package/docs/vi/intlayer_with_svelte_kit.md +1 -1
- package/docs/vi/intlayer_with_tanstack+solid.md +5 -3
- package/docs/vi/intlayer_with_tanstack.md +5 -3
- package/docs/vi/live-sync.md +4 -0
- package/docs/vi/lsp.md +115 -176
- package/docs/vi/readme.md +24 -24
- package/docs/zh/bundle_optimization.md +58 -25
- package/docs/zh/configuration.md +10 -10
- package/docs/zh/interest_of_intlayer.md +24 -22
- package/docs/zh/intlayer_with_svelte_kit.md +1 -1
- package/docs/zh/intlayer_with_tanstack+solid.md +5 -3
- package/docs/zh/intlayer_with_tanstack.md +5 -3
- package/docs/zh/live-sync.md +4 -0
- package/docs/zh/lsp.md +113 -174
- package/docs/zh/readme.md +21 -21
- package/docs/zh-TW/bundle_optimization.md +58 -25
- package/docs/zh-TW/interest_of_intlayer.md +24 -22
- package/package.json +7 -7
- package/src/common.ts +39 -2
- package/src/generated/blog.entry.ts +39 -7
- package/src/generated/docs.entry.ts +39 -7
- package/src/generated/frequentQuestions.entry.ts +39 -7
- package/src/generated/legal.entry.ts +39 -7
package/docs/hi/lsp.md
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-06-07
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-08-10
|
|
4
4
|
title: Intlayer LSP सर्वर
|
|
5
|
-
description: जानें कि
|
|
5
|
+
description: जानें कि Intlayer लैंग्वेज सर्वर आपके IDE और AI एजेंट में परिभाषा पर जाना, संदर्भ खोजना, होवर पूर्वावलोकन, कुंजी ऑटोकम्प्लीशन और डायग्नोस्टिक्स कैसे लाता है।
|
|
6
6
|
keywords:
|
|
7
7
|
- LSP
|
|
8
8
|
- लैंग्वेज सर्वर
|
|
9
|
-
-
|
|
9
|
+
- Go to Definition
|
|
10
|
+
- ऑटोकम्प्लीशन
|
|
11
|
+
- डायग्नोस्टिक्स
|
|
10
12
|
- IDE
|
|
11
13
|
- Intlayer
|
|
12
14
|
- VS Code
|
|
@@ -16,6 +18,9 @@ slugs:
|
|
|
16
18
|
- doc
|
|
17
19
|
- lsp
|
|
18
20
|
history:
|
|
21
|
+
- version: 9.1.3
|
|
22
|
+
date: 2026-08-10
|
|
23
|
+
changes: "संदर्भ खोज, होवर, ऑटोकम्प्लीशन और डायग्नोस्टिक्स जोड़े गए"
|
|
19
24
|
- version: 8.12.0
|
|
20
25
|
date: 2026-06-01
|
|
21
26
|
changes: "Release LSP"
|
|
@@ -24,48 +29,47 @@ author: aymericzip
|
|
|
24
29
|
|
|
25
30
|
# Intlayer LSP सर्वर
|
|
26
31
|
|
|
27
|
-
**Intlayer लैंग्वेज
|
|
32
|
+
**Intlayer लैंग्वेज सर्वर** [Language Server Protocol (LSP)](https://microsoft.github.io/language-server-protocol/) का एक कार्यान्वयन है जो आपके IDE — और आपके AI एजेंट — को Intlayer के प्रति सजग बनाता है। यह `useIntlayer("home")` जैसे कॉल को उस `.content.ts` फ़ाइल से जोड़ता है जो उसे घोषित करती है, दोनों दिशाओं में।
|
|
28
33
|
|
|
29
34
|
---
|
|
30
35
|
|
|
31
|
-
##
|
|
36
|
+
## विशेषताएँ
|
|
32
37
|
|
|
33
|
-
|
|
38
|
+
| विशेषता | शॉर्टकट | यह क्या करता है |
|
|
39
|
+
| -------------------- | ------------------- | ---------------------------------------------------------------------------------------------- |
|
|
40
|
+
| **परिभाषा पर जाएँ** | `F12` / `Cmd+क्लिक` | किसी डिक्शनरी कुंजी या फ़ील्ड के उपयोग से कंटेंट फ़ाइल में उसकी घोषणा पर पहुँचें |
|
|
41
|
+
| **सभी संदर्भ खोजें** | `Shift+F12` | किसी कंटेंट फ़ाइल से, उस कुंजी या फ़ील्ड का उपयोग करने वाले हर कॉल स्थान की सूची दें |
|
|
42
|
+
| **होवर** | कर्सर ले जाएँ | फ़ाइल छोड़े बिना किसी डिक्शनरी के फ़ील्ड, या किसी फ़ील्ड का अनूदित मान देखें |
|
|
43
|
+
| **ऑटोकम्प्लीशन** | `"` `'` `` ` `` `.` | गेटर के भीतर घोषित डिक्शनरी कुंजियाँ, और `.` के बाद या डीस्ट्रक्चरिंग में कंटेंट फ़ील्ड सुझाएँ |
|
|
44
|
+
| **डायग्नोस्टिक्स** | स्वतः | चेतावनी दें जब कोई कुंजी किसी भी कंटेंट फ़ाइल में घोषित न हो |
|
|
34
45
|
|
|
35
|
-
|
|
46
|
+
दो अतिरिक्त व्यवहार जानने योग्य हैं:
|
|
36
47
|
|
|
37
|
-
|
|
48
|
+
- **मर्ज की गई डिक्शनरियाँ** — कई कंटेंट फ़ाइलों में बँटी कुंजी हर फ़ाइल के लिए एक परिणाम लौटाती है, जिससे आप हर घोषणा तक जा सकते हैं।
|
|
49
|
+
- **मोनोरेपो-अनुकूल** — सर्वर हर फ़ाइल के _निकटतम_ `intlayer.config.*` को हल करता है, जिससे एक ही वर्कस्पेस के कई प्रोजेक्ट्स को अपनी-अपनी डिक्शनरियाँ मिलती हैं।
|
|
38
50
|
|
|
39
|
-
|
|
51
|
+
### समर्थित कॉल
|
|
40
52
|
|
|
41
|
-
|
|
53
|
+
कुंजी या तो स्थिति-आधारित स्ट्रिंग आर्ग्युमेंट से पढ़ी जाती है, या विकल्प ऑब्जेक्ट (`{ namespace }`, `{ id }`) से।
|
|
42
54
|
|
|
43
|
-
|
|
55
|
+
| लाइब्रेरी | कॉल |
|
|
56
|
+
| --------------------------- | -------------------------------------------------------- |
|
|
57
|
+
| **Intlayer** | `useIntlayer`, `getIntlayer` |
|
|
58
|
+
| **i18next / react-i18next** | `useTranslation`, `getFixedT`, `t`, `Trans` |
|
|
59
|
+
| **next-intl / use-intl** | `useTranslations`, `getTranslations`, `createTranslator` |
|
|
60
|
+
| **react-intl** | `formatMessage`, `FormattedMessage` |
|
|
61
|
+
| **Lingui** | `useLingui`, `t`, `Trans`, `_` |
|
|
62
|
+
| **vue-i18n** | `useI18n` |
|
|
44
63
|
|
|
45
|
-
|
|
64
|
+
यह हर `*-intlayer` पैकेज (`next-intlayer`, `react-intlayer`, `vue-intlayer`, `svelte-intlayer`, `solid-intlayer`, `preact-intlayer`, `angular-intlayer`, `lit-intlayer`, `express-intlayer`, `hono-intlayer`, `fastify-intlayer`, `intlayer`) के लिए काम करता है, और उन compat अडैप्टर पैकेजों के लिए भी जो आपको अपना मौजूदा i18n सिंटैक्स बनाए रखने देते हैं।
|
|
46
65
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
सभी `*-intlayer` पैकेजों का समर्थन करता है (`next-intlayer`, `react-intlayer`, `vue-intlayer`, `svelte-intlayer`, `solid-intlayer`, `preact-intlayer`, `angular-intlayer`, `lit-intlayer`, `express-intlayer`, `hono-intlayer`, `fastify-intlayer`, `adonis-intlayer`, `intlayer`)।
|
|
50
|
-
|
|
51
|
-
### समर्थित गेटर कॉल्स
|
|
52
|
-
|
|
53
|
-
सर्वर निम्नलिखित फ़ंक्शन कॉल्स का पता लगाता है और पहले स्ट्रिंग-लिटरल तर्क को डिक्शनरी कुंजी के रूप में निकालता है:
|
|
54
|
-
|
|
55
|
-
| फ़ंक्शन | उदाहरण |
|
|
56
|
-
| ------------- | ----------------------------- |
|
|
57
|
-
| `useIntlayer` | `useIntlayer("hero")` |
|
|
58
|
-
| `getIntlayer` | `getIntlayer("hero", locale)` |
|
|
59
|
-
|
|
60
|
-
TypeScript जेनिरिक्स और अतिरिक्त तर्कों को अनदेखा कर दिया जाता है — केवल कुंजी स्ट्रिंग मायने रखती है।
|
|
61
|
-
|
|
62
|
-
> `useDictionary` और `getDictionary` एक स्ट्रिंग कुंजी के बजाय पहले तर्क के रूप में पहले से इम्पोर्टेड `Dictionary` ऑब्जेक्ट लेते हैं, इसलिए वे परिभाषा पर जाएं सुविधा से लाभान्वित नहीं होते हैं और सर्वर द्वारा ट्रैक नहीं किए जाते हैं।
|
|
66
|
+
> डिक्शनरियाँ बिल्ड आउटपुट से पढ़ी जाती हैं, इसलिए `npx intlayer build` चलाएँ — या अपना डेव सर्वर चालू रखें — ताकि सर्वर के पास हल करने को कुछ हो।
|
|
63
67
|
|
|
64
68
|
---
|
|
65
69
|
|
|
66
70
|
## इंस्टॉलेशन
|
|
67
71
|
|
|
68
|
-
|
|
72
|
+
सर्वर `@intlayer/lsp` में `intlayer-lsp` बाइनरी के रूप में वितरित होता है:
|
|
69
73
|
|
|
70
74
|
```bash packageManager="npm"
|
|
71
75
|
npm install --save-dev @intlayer/lsp
|
|
@@ -83,43 +87,43 @@ pnpm add --save-dev @intlayer/lsp
|
|
|
83
87
|
bun add --dev @intlayer/lsp
|
|
84
88
|
```
|
|
85
89
|
|
|
86
|
-
|
|
90
|
+
यदि आपके एडिटर को `PATH` में `intlayer-lsp` चाहिए तो इसके बजाय इसे ग्लोबली इंस्टॉल करें (`npm install -g @intlayer/lsp`) — Claude Code प्लगइन और नीचे दिए हर उस कॉन्फ़िगरेशन के लिए यही स्थिति है जो बाइनरी को सीधे कॉल करता है।
|
|
87
91
|
|
|
88
92
|
---
|
|
89
93
|
|
|
90
|
-
##
|
|
94
|
+
## सेटअप
|
|
91
95
|
|
|
92
|
-
|
|
96
|
+
<Tabs defaultTab="vscode">
|
|
97
|
+
<Tab label="VS Code" value="vscode">
|
|
93
98
|
|
|
94
|
-
|
|
99
|
+
[Intlayer VS Code एक्सटेंशन](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) इंस्टॉल करें। लैंग्वेज सर्वर v8.12.0 से इसमें शामिल है और स्वतः शुरू होता है — **किसी कॉन्फ़िगरेशन की ज़रूरत नहीं**।
|
|
95
100
|
|
|
96
|
-
|
|
97
|
-
npm install -g @intlayer/lsp
|
|
98
|
-
```
|
|
101
|
+
अन्य सुविधाओं के लिए [VS Code एक्सटेंशन दस्तावेज़](https://intlayer.org/doc/vs-code-extension) देखें।
|
|
99
102
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
```
|
|
103
|
+
</Tab>
|
|
104
|
+
<Tab label="Cursor / Windsurf" value="cursor">
|
|
103
105
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
106
|
+
[Cursor](https://www.cursor.com/) और [Windsurf](https://windsurf.com/) VS Code के फ़ोर्क हैं और उसी एक्सटेंशन इकोसिस्टम का उपयोग करते हैं। [Intlayer VS Code एक्सटेंशन](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) एक बार इंस्टॉल करें और सर्वर स्वतः सक्रिय हो जाता है — **किसी कॉन्फ़िगरेशन की ज़रूरत नहीं**।
|
|
107
|
+
|
|
108
|
+
</Tab>
|
|
109
|
+
<Tab label="Claude Code" value="claude-code">
|
|
107
110
|
|
|
108
|
-
यह `
|
|
111
|
+
Intlayer एक **Claude Code प्लगइन** देता है जो Intlayer रिपॉज़िटरी में होस्ट है। यह Claude Code को `grep` पर लौटने के बजाय आपकी डिक्शनरी कुंजियों के लिए वास्तविक सिंबल रिज़ॉल्यूशन देता है।
|
|
109
112
|
|
|
110
|
-
|
|
113
|
+
बाइनरी को अपने `PATH` में रखें, फिर marketplace रजिस्टर करें और प्लगइन इंस्टॉल करें:
|
|
111
114
|
|
|
112
115
|
```bash
|
|
116
|
+
npm install -g @intlayer/lsp
|
|
117
|
+
|
|
113
118
|
claude plugin marketplace add intlayer@github:aymericzip/intlayer
|
|
114
119
|
claude plugin install intlayer-lsp@intlayer
|
|
115
|
-
claude plugin enable intlayer-lsp@intlayer
|
|
116
120
|
```
|
|
117
121
|
|
|
118
|
-
|
|
122
|
+
`install` प्लगइन को सक्षम भी कर देता है। **Claude Code पुनः आरंभ करें** — लैंग्वेज सर्वर स्टार्टअप पर लोड होते हैं, इसलिए तब तक प्लगइन का कोई असर नहीं होता।
|
|
119
123
|
|
|
120
|
-
|
|
124
|
+
इसके बाद Claude Code `.ts`, `.tsx`, `.js`, `.jsx`, `.vue`, `.astro` और `.svelte` फ़ाइलों पर सर्वर शुरू करता है, और आपके कोड में नेविगेट करते समय `goToDefinition`, `findReferences` और `hover` का उपयोग करता है।
|
|
121
125
|
|
|
122
|
-
|
|
126
|
+
यदि परिभाषा पर जाना अब भी काम नहीं करता, तो संभव है कि आपका Claude Code संस्करण LSP टूल को किसी फ़्लैग के पीछे रखता हो:
|
|
123
127
|
|
|
124
128
|
```json fileName="~/.claude/settings.json"
|
|
125
129
|
{
|
|
@@ -129,61 +133,10 @@ Claude Code आपके `enabledPlugins` में `"intlayer-lsp@intlayer": tr
|
|
|
129
133
|
}
|
|
130
134
|
```
|
|
131
135
|
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
---
|
|
135
|
-
|
|
136
|
-
## VS Code में सेटअप (एक्सटेंशन के माध्यम से — अनुशंसित)
|
|
137
|
-
|
|
138
|
-
यदि आपके पास [Intlayer VS Code एक्सटेंशन](https://marketplace.visualstudio.com/items?itemName=Intlayer.intlayer-vs-code-extension) इंस्टॉल है, तो लैंग्वेज सर्वर स्वचालित रूप से शुरू हो जाता है। किसी अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता नहीं है। LSP को v8.12.0 के बाद से सीधे VSCode एक्सटेंशन में एकीकृत किया गया है।
|
|
139
|
-
|
|
140
|
-
> इंस्टॉलेशन और अन्य सुविधाओं के लिए [VS Code एक्सटेंशन दस्तावेज़](https://intlayer.org/doc/vs-code-extension) देखें।
|
|
141
|
-
|
|
142
|
-
---
|
|
143
|
-
|
|
144
|
-
## VS Code में मैन्युअल सेटअप
|
|
145
|
-
|
|
146
|
-
यदि आप Intlayer एक्सटेंशन का उपयोग नहीं कर रहे हैं, तो आप [**vscode-glspc**](https://marketplace.visualstudio.com/items?itemName=sibiraj-s.vscode-scss-formatter) जैसे सामान्य LSP क्लाइंट एक्सटेंशन का उपयोग करके या अपना खुद का छोटा एक्सटेंशन लिखकर मैन्युअल रूप से लैंग्वेज सर्वर को कनेक्ट कर सकते हैं। अनुशंसित तरीका Intlayer एक्सटेंशन का उपयोग करना है।
|
|
147
|
-
|
|
148
|
-
संदर्भ के लिए, सर्वर stdio पर `intlayer-lsp` बाइनरी के माध्यम से लॉन्च होता है:
|
|
149
|
-
|
|
150
|
-
```json fileName=".vscode/settings.json"
|
|
151
|
-
{
|
|
152
|
-
"intlayer.languageServer.command": "npx",
|
|
153
|
-
"intlayer.languageServer.args": ["@intlayer/lsp"]
|
|
154
|
-
}
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
Intlayer एक्सटेंशन सर्वर लॉन्च करने के लिए इन सेटिंग्स को पढ़ता है। यदि आप पूरी तरह से एक्सटेंशन पर निर्भर हैं, तो किसी मैन्युअल सेटिंग्स की आवश्यकता नहीं है।
|
|
158
|
-
|
|
159
|
-
---
|
|
160
|
-
|
|
161
|
-
## Cursor में सेटअप
|
|
162
|
-
|
|
163
|
-
[Cursor](https://www.cursor.com/) अंतर्निहित AI सुविधाओं वाला एक VS Code फ़ोर्क है। यह समान एक्सटेंशन पारिस्थितिकी तंत्र का उपयोग करता है, इसलिए **Intlayer VS Code एक्सटेंशन** बिना किसी अतिरिक्त कॉन्फ़िगरेशन के काम करता है — इसे एक बार इंस्टॉल करें और Cursor इसे स्वचालित रूप से चुन लेता है।
|
|
164
|
-
|
|
165
|
-
यदि आप मैन्युअल कॉन्फ़िगरेशन पसंद करते हैं, तो Cursor वर्कस्पेस रूट से `.vscode/settings.json` भी पढ़ता है, इसलिए उपरोक्त VS Code स्निपेट सीधे लागू होता है।
|
|
166
|
-
|
|
167
|
-
---
|
|
168
|
-
|
|
169
|
-
## Windsurf में सेटअप
|
|
170
|
-
|
|
171
|
-
[Windsurf](https://windsurf.com/) (Codeium द्वारा) एक अन्य VS Code-आधारित एडिटर है। VS Code मार्केटप्लेस से Intlayer एक्सटेंशन इंस्टॉल करें और लैंग्वेज सर्वर स्वचालित रूप से सक्रिय हो जाता है, ठीक वैसे ही जैसे VS Code और Cursor में होता है।
|
|
172
|
-
|
|
173
|
-
मैन्युअल कॉन्फ़िगरेशन के लिए, प्रोजेक्ट रूट पर `.vscode/settings.json` बनाएं:
|
|
174
|
-
|
|
175
|
-
```json fileName=".vscode/settings.json"
|
|
176
|
-
{
|
|
177
|
-
"intlayer.languageServer.command": "npx",
|
|
178
|
-
"intlayer.languageServer.args": ["@intlayer/lsp"]
|
|
179
|
-
}
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
---
|
|
183
|
-
|
|
184
|
-
## Zed में सेटअप
|
|
136
|
+
</Tab>
|
|
137
|
+
<Tab label="Zed" value="zed">
|
|
185
138
|
|
|
186
|
-
|
|
139
|
+
Zed में LSP का मूल समर्थन है। सर्वर को अपनी यूज़र सेटिंग्स में जोड़ें:
|
|
187
140
|
|
|
188
141
|
```json fileName="~/.config/zed/settings.json"
|
|
189
142
|
{
|
|
@@ -196,47 +149,21 @@ Intlayer एक्सटेंशन सर्वर लॉन्च करन
|
|
|
196
149
|
}
|
|
197
150
|
},
|
|
198
151
|
"languages": {
|
|
199
|
-
"TypeScript": {
|
|
200
|
-
|
|
201
|
-
},
|
|
202
|
-
"
|
|
203
|
-
|
|
204
|
-
},
|
|
205
|
-
"JavaScript": {
|
|
206
|
-
"language_servers": ["intlayer-lsp", "..."]
|
|
207
|
-
},
|
|
208
|
-
"Vue.js": {
|
|
209
|
-
"language_servers": ["intlayer-lsp", "..."]
|
|
210
|
-
},
|
|
211
|
-
"Svelte": {
|
|
212
|
-
"language_servers": ["intlayer-lsp", "..."]
|
|
213
|
-
}
|
|
152
|
+
"TypeScript": { "language_servers": ["intlayer-lsp", "..."] },
|
|
153
|
+
"TSX": { "language_servers": ["intlayer-lsp", "..."] },
|
|
154
|
+
"JavaScript": { "language_servers": ["intlayer-lsp", "..."] },
|
|
155
|
+
"Vue.js": { "language_servers": ["intlayer-lsp", "..."] },
|
|
156
|
+
"Svelte": { "language_servers": ["intlayer-lsp", "..."] }
|
|
214
157
|
}
|
|
215
158
|
}
|
|
216
159
|
```
|
|
217
160
|
|
|
218
|
-
`"..."` प्लेसहोल्डर Zed
|
|
219
|
-
|
|
220
|
-
---
|
|
221
|
-
|
|
222
|
-
## AI एजेंट CLI (Claude Code, Codex, आदि) के लिए सेटअप
|
|
223
|
-
|
|
224
|
-
**Claude Code** में प्रथम श्रेणी का LSP प्लगइन समर्थन है — सीधे अपने टर्मिनल सत्रों में परिभाषा पर जाने का पूर्ण अनुभव प्राप्त करने के लिए उपरोक्त [Claude Code प्लगइन सेटअप](#claude-code-प्लगइन-के-रूप-में-सेटअप-करें) का पालन करें।
|
|
161
|
+
`"..."` प्लेसहोल्डर Zed के डिफ़ॉल्ट लैंग्वेज सर्वरों को Intlayer वाले के साथ बनाए रखता है।
|
|
225
162
|
|
|
226
|
-
|
|
163
|
+
</Tab>
|
|
164
|
+
<Tab label="Neovim" value="neovim">
|
|
227
165
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
```bash
|
|
231
|
-
# सर्वर को बैकग्राउंड में चालू रखें
|
|
232
|
-
npx @intlayer/lsp &
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
---
|
|
236
|
-
|
|
237
|
-
## Neovim में मैन्युअल सेटअप
|
|
238
|
-
|
|
239
|
-
[nvim-lspconfig](https://github.com/neovim/nvim-lspconfig) का उपयोग करके, एक कस्टम सर्वर कॉन्फ़िगरेशन पंजीकृत करें:
|
|
166
|
+
[nvim-lspconfig](https://github.com/neovim/nvim-lspconfig) का उपयोग करते हुए, एक कस्टम सर्वर कॉन्फ़िगरेशन रजिस्टर करें:
|
|
240
167
|
|
|
241
168
|
```lua fileName="~/.config/nvim/init.lua"
|
|
242
169
|
local lspconfig = require('lspconfig')
|
|
@@ -245,7 +172,7 @@ local configs = require('lspconfig.configs')
|
|
|
245
172
|
if not configs.intlayer_lsp then
|
|
246
173
|
configs.intlayer_lsp = {
|
|
247
174
|
default_config = {
|
|
248
|
-
--
|
|
175
|
+
-- सर्वर को npx से चलाएँ ताकि ग्लोबल इंस्टॉल की ज़रूरत न पड़े
|
|
249
176
|
cmd = { 'npx', '--yes', '@intlayer/lsp' },
|
|
250
177
|
filetypes = {
|
|
251
178
|
'typescript',
|
|
@@ -267,21 +194,10 @@ end
|
|
|
267
194
|
lspconfig.intlayer_lsp.setup({})
|
|
268
195
|
```
|
|
269
196
|
|
|
270
|
-
Neovim
|
|
271
|
-
|
|
272
|
-
---
|
|
273
|
-
|
|
274
|
-
## अन्य एडिटर्स में मैन्युअल सेटअप
|
|
275
|
-
|
|
276
|
-
कोई भी एडिटर जो लैंग्वेज सर्वर प्रोटोकॉल का समर्थन करता है, `@intlayer/lsp` का उपयोग कर सकता है। सर्वर:
|
|
197
|
+
Neovim पुनः आरंभ करने के बाद, किसी डिक्शनरी कुंजी पर `gd` परिभाषा पर जाएँ चलाता है और `gr` संदर्भ खोजें चलाता है।
|
|
277
198
|
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
- **क्षमताएं** – `definitionProvider: true`, `textDocumentSync: Incremental`
|
|
281
|
-
|
|
282
|
-
सटीक कॉन्फ़िगरेशन प्रारूप के लिए अपने एडिटर के LSP दस्तावेज़ों से परामर्श लें (उदाहरण के लिए, [coc.nvim](https://github.com/neoclide/coc.nvim) के लिए `languageserver.json`, या [Helix](https://helix-editor.com) में LSP क्लाइंट सेटिंग्स)।
|
|
283
|
-
|
|
284
|
-
### उदाहरण: coc.nvim
|
|
199
|
+
</Tab>
|
|
200
|
+
<Tab label="coc.nvim" value="coc">
|
|
285
201
|
|
|
286
202
|
```json fileName="~/.config/nvim/coc-settings.json"
|
|
287
203
|
{
|
|
@@ -307,9 +223,14 @@ Neovim को पुनरारंभ करने के बाद, Intlayer
|
|
|
307
223
|
}
|
|
308
224
|
```
|
|
309
225
|
|
|
310
|
-
|
|
226
|
+
</Tab>
|
|
227
|
+
<Tab label="Helix" value="helix">
|
|
311
228
|
|
|
312
229
|
```toml fileName="~/.config/helix/languages.toml"
|
|
230
|
+
[language-server.intlayer-lsp]
|
|
231
|
+
command = "npx"
|
|
232
|
+
args = ["@intlayer/lsp"]
|
|
233
|
+
|
|
313
234
|
[[language]]
|
|
314
235
|
name = "typescript"
|
|
315
236
|
language-servers = ["intlayer-lsp", "typescript-language-server"]
|
|
@@ -317,36 +238,54 @@ language-servers = ["intlayer-lsp", "typescript-language-server"]
|
|
|
317
238
|
[[language]]
|
|
318
239
|
name = "tsx"
|
|
319
240
|
language-servers = ["intlayer-lsp", "typescript-language-server"]
|
|
320
|
-
|
|
321
|
-
[language-server.intlayer-lsp]
|
|
322
|
-
command = "npx"
|
|
323
|
-
args = ["@intlayer/lsp"]
|
|
324
241
|
```
|
|
325
242
|
|
|
243
|
+
</Tab>
|
|
244
|
+
<Tab label="अन्य एडिटर" value="other">
|
|
245
|
+
|
|
246
|
+
LSP सक्षम कोई भी एडिटर `@intlayer/lsp` चला सकता है। उसे यह बताएँ:
|
|
247
|
+
|
|
248
|
+
- **एक्ज़ीक्यूटेबल** — `npx @intlayer/lsp`, या `intlayer-lsp` बाइनरी
|
|
249
|
+
- **ट्रांसपोर्ट** — stdio (मानक)
|
|
250
|
+
- **क्षमताएँ** — `definitionProvider`, `referencesProvider`, `hoverProvider`, `completionProvider` (ट्रिगर वर्ण `"` `'` `` ` `` `.`), पुश डायग्नोस्टिक्स, `textDocumentSync: Incremental`
|
|
251
|
+
- **रूट पैटर्न** — `intlayer.config.ts`, `intlayer.config.js`, `package.json`
|
|
252
|
+
|
|
253
|
+
सटीक कॉन्फ़िगरेशन प्रारूप के लिए अपने एडिटर का LSP दस्तावेज़ देखें।
|
|
254
|
+
|
|
255
|
+
</Tab>
|
|
256
|
+
</Tabs>
|
|
257
|
+
|
|
326
258
|
---
|
|
327
259
|
|
|
328
|
-
##
|
|
260
|
+
## टर्मिनल AI एजेंट्स पर टिप्पणी
|
|
329
261
|
|
|
330
|
-
|
|
262
|
+
**Claude Code** एक वास्तविक LSP क्लाइंट की तरह काम करता है — ऊपर का टैब देखें।
|
|
331
263
|
|
|
332
|
-
|
|
264
|
+
**OpenAI Codex** और अधिकांश अन्य टर्मिनल टूल LSP क्लाइंट नहीं हैं: वे फ़ाइलें सीधे पढ़ते और लिखते हैं। सर्वर को अकेले चलाने से उन्हें मदद नहीं मिलती; लाभ तब मिलता है जब वह किसी सहयोगी एडिटर में सक्रिय हो जिसका इंडेक्स एजेंट क्वेरी कर सके (Cursor Composer, Windsurf Cascade, Copilot Chat)।
|
|
333
265
|
|
|
334
|
-
|
|
335
|
-
2. यह एक नियमित अभिव्यक्ति का उपयोग करके गेटर कॉल्स (`useIntlayer`, `getIntlayer` आदि) को स्कैन करता है।
|
|
336
|
-
3. यह जांचता है कि क्या कर्सर की स्थिति उन कॉल्स में से किसी एक के अंदर आती है।
|
|
337
|
-
4. यदि ऐसा होता है, तो यह डिक्शनरी कुंजी (रेगेक्स का कैप्चर समूह 3) निकालता है और उस कुंजी को घोषित करने वाली प्रत्येक कंटेंट फ़ाइल का पता लगाने के लिए `getUnmergedDictionaries()` को कॉल करता है।
|
|
338
|
-
5. यह प्रत्येक मिलान वाली फ़ाइल को पढ़ता है और कर्सर को सटीक रूप से स्थान देने के लिए `key: "<key>"` वाली सटीक लाइन ढूंढता है।
|
|
339
|
-
6. यह `Location` ऑब्जेक्ट्स का एक सरणी लौटाता है — प्रति स्रोत फ़ाइल एक।
|
|
266
|
+
---
|
|
340
267
|
|
|
341
|
-
|
|
268
|
+
## यह कैसे काम करता है
|
|
269
|
+
|
|
270
|
+
हर फ़ाइल के लिए सर्वर निकटतम `intlayer.config.*` खोजता है और उस प्रोजेक्ट का कॉन्फ़िगरेशन लोड करके संकलित डिक्शनरियाँ ढूँढता है। कॉन्फ़िगरेशन, डिक्शनरियाँ और स्रोत-फ़ाइल सूची छोटे TTL के साथ कैश होती हैं, और किसी निगरानी-अधीन कंटेंट फ़ाइल के बदलते ही अमान्य कर दी जाती हैं।
|
|
271
|
+
|
|
272
|
+
अनुरोध पर, सर्वर दस्तावेज़ को ([oxc](https://oxc.rs/) के ज़रिए) पार्स करता है और कर्सर की स्थिति जाँचता है:
|
|
273
|
+
|
|
274
|
+
1. **किसी कुंजी स्ट्रिंग पर** (`useIntlayer("home")`) → उस कुंजी को घोषित करने वाली हर कंटेंट फ़ाइल लौटाता है, उसकी `key:` पंक्ति पर स्थित।
|
|
275
|
+
2. **किसी फ़ील्ड उपयोग पर** (`content.title`, कोई डीस्ट्रक्चर की गई प्रॉपर्टी, `t('path.to.field')`, `<Trans>`, …) → वेरिएबल को उसकी डिक्शनरी तक पीछे हल करता है और कंटेंट फ़ाइलों में संगत फ़ील्ड लौटाता है।
|
|
276
|
+
3. **किसी कंटेंट फ़ाइल से** → उलटी खोज चलाता है, और उस कुंजी या फ़ील्ड के कॉल स्थानों के लिए प्रोजेक्ट स्रोतों को स्कैन करता है।
|
|
342
277
|
|
|
343
278
|
---
|
|
344
279
|
|
|
345
|
-
##
|
|
280
|
+
## समस्या-निवारण
|
|
281
|
+
|
|
282
|
+
| लक्षण | संभावित कारण | समाधान |
|
|
283
|
+
| ------------------------------------------- | -------------------------------- | --------------------------------------------------------------------------- |
|
|
284
|
+
| कुछ भी नहीं होता | सर्वर नहीं चल रहा | जाँचें कि `@intlayer/lsp` इंस्टॉल है और आपका एडिटर उसे शुरू करता है |
|
|
285
|
+
| एडिटर में काम करता है, Claude Code में नहीं | सत्र के बीच प्लगइन इंस्टॉल किया | Claude Code पुनः आरंभ करें — लैंग्वेज सर्वर स्टार्टअप पर लोड होते हैं |
|
|
286
|
+
| किसी कुंजी की परिभाषा नहीं मिलती | डिक्शनरियाँ बिल्ड नहीं हुईं | `npx intlayer build` चलाएँ, या अपना डेव सर्वर शुरू करें |
|
|
287
|
+
| हर कुंजी अघोषित बताई जाती है | कॉन्फ़िगरेशन हल नहीं हुआ | सत्यापित करें कि प्रोजेक्ट रूट में `intlayer.config.ts` (या `.js`) मौजूद है |
|
|
288
|
+
| मोनोरेपो में ग़लत प्रोजेक्ट उपयोग हुआ | प्रति-पैकेज कॉन्फ़िगरेशन नहीं है | अपना कंटेंट घोषित करने वाले हर पैकेज में `intlayer.config.*` जोड़ें |
|
|
289
|
+
| शुरू होते ही सर्वर क्रैश हो जाता है | Node.js संस्करण बहुत पुराना | Node.js ≥ 14.18 आवश्यक है |
|
|
346
290
|
|
|
347
|
-
|
|
348
|
-
| -------------------------------------- | ------------------------------ | ----------------------------------------------------------------------------- |
|
|
349
|
-
| परिभाषा पर जाएं कुछ नहीं करता | सर्वर नहीं चल रहा है | जांचें कि क्या `@intlayer/lsp` इंस्टॉल है और एडिटर इसे लॉन्च कर रहा है |
|
|
350
|
-
| गलत वर्कस्पेस रूट का पता चला | एकाधिक वर्कस्पेस फ़ोल्डर | सुनिश्चित करें कि `intlayer.config.ts` वाली फ़ोल्डर पहली वर्कस्पेस फ़ोल्डर है |
|
|
351
|
-
| किसी कुंजी के लिए परिभाषाएँ नहीं मिलीं | कॉन्फ़िगरेशन हल नहीं हुआ | सत्यापित करें कि वर्कस्पेस रूट पर `intlayer.config.ts` (या `.js`) मौजूद है |
|
|
352
|
-
| सर्वर स्टार्टअप पर क्रैश हो जाता है | Node.js संस्करण बहुत पुराना है | Node.js ≥ 14.18 की आवश्यकता है |
|
|
291
|
+
VS Code में सर्वर **View → Output → "Intlayer LSP"** में लॉग लिखता है — यह पुष्टि करने में उपयोगी कि कौन-सा कॉन्फ़िगरेशन हल हुआ और कितनी डिक्शनरियाँ मिलीं।
|