ΠΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Ρ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΆΠΈΠ΄Π°ΡΡ, ΡΡΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΠΉ Π½ΠΎΠΌΠ΅Ρ Π²Π΅ΡΡΠΈΠΈ Π±ΡΠ΄Π΅Ρ> = ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±ΡΠ»ΠΎ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ Π² LS.
tsserver
ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΡ ΠΆΠ΅ Π²Π΅ΡΡΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ, ΠΈ ΠΊΠΎΠ΄-Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ.
https://github.com/neovim/neovim/blob/c1fbc2ddf15b2f44b615f90b2511349ab974cb83/runtime/lua/vim/lsp/util.lua#L265 -L272
ΠΠΎΡ ΠΊΠΎΠ΄ ΠΈΠ· neovim-lsp
ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ Π½ΠΎΠΌΠ΅Ρ Π²Π΅ΡΡΠΈΠΈ.
ΠΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΉΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ svelteserver
ΠΈ tsserver
ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π½ΠΎΠΌΠ΅ΡΠ° Π²Π΅ΡΡΠΈΠΈ.
ΠΠ·ΠΌΠ΅Π½ΠΈΡΡ : Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΡΠΎ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ:
Code Actions:
1. (svelte) Disable missing-declaration for this line
2. Import 'teenStyle' from module "./helpers"
ΠΠ΅ΡΠΎΡΡΠ½ΠΎ, ΡΡΠ° ΡΡΡΠΎΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ https://github.com/sveltejs/language-tools/blob/eac5c7478aebe949bb4337126f38a45b46be8c10/packages/language-server/src/plugins/types/features14/CodeActionsPlugins/types/features14/CodeActionsPlugins
ΠΠ»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² Svelte ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌΠΎ, Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² TS / JS, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΡΠΎ ΠΊΠ°ΠΊ ΡΠ΅ΠΉΡΠ°Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ ΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ΅ΠΊΡΡΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΡΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ².
ΠΠ»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² Svelte ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌΠΎ, Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² TS / JS, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΡΠΎ ΠΊΠ°ΠΊ ΡΠ΅ΠΉΡΠ°Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ ΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ΅ΠΊΡΡΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΡΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ².
ΠΡ ΠΈΠΌΠ΅Π΅ΡΠ΅ Π² Π²ΠΈΠ΄Ρ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ js / ts ΠΈΠ·-Π·Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΠΎΠ΄Π° Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ svelte?
ΠΠ΅ ΠΌΠΎΠ³Ρ ΡΠ΅ΠΉΡΠ°Ρ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΏΡΠΈΠΌΠ΅Ρ. : ΠΌΡΡΠ»Π΅Π½ΠΈΠ΅:
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΡΡΠΎ Ρ Π½Π΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π», ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΡΠ°ΠΉΠ»Π΅ .ts
. ΠΡΡΠ°Π·ΠΈΡΡΡ Π»ΠΈ ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΡΠΎΠΉΠ½ΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°Ρ
...
Brb. :ΡΠ»ΡΠ±ΠΊΠ°:
ΠΠ°Ρ ... Π½Π΅ Π±ΡΠ΄Π΅Ρ. ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΡΠ΅ΡΠ²Π΅Ρ svelte language Π½ΡΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² .ts|.js
Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
svelte?
ΠΡΠΎ Π½Π΅ ΡΠ°ΠΊ, ΠΈ ΡΡΠΎ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅ΡΡΡ Π² # 580.
ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΡΠ°ΠΉΠ»Π°Ρ Svelte, Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°ΡΡΠ΅Π΅ ΡΠ°ΠΉΠ»Ρ JS, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ·ΡΠΊΠΎΠ²ΠΎΠΉ ΡΠ΅ΡΠ²Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² JS / TS.
ΠΠ»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² Svelte ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌΠΎ, Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² TS / JS, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΡΠΎ ΠΊΠ°ΠΊ ΡΠ΅ΠΉΡΠ°Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ ΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ΅ΠΊΡΡΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΡΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ².
Π ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ textDocument
TextDocumentEdit
- ΡΡΠΎ OptionalVersionedTextDocumentIdentifier
, ΠΏΠΎΡΡΠΎΠΌΡ Π²Π΅ΡΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ null
, Π° Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ null
0, Π΅ΡΠ»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ Π²Π΅ΡΡΠΈΠΈ.