рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдбрд╛рд░реНрдЯ рдХреЛрдб рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЛрдб рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕рд░реНрд╡рд░ рдПрдкреАрдЖрдИ рд╕реЗ рд╡реАрдПрд╕ рдХреЛрдб рдПрдкреАрдЖрдИ рдореЗрдВ рдореИрдк рдХрд░рддреЗ рд╣реИрдВред рдЪреВрдВрдХрд┐ рд╡реАрдПрд╕ рдХреЛрдб рдХреЗ рдПрдкреАрдЖрдИ рдХреЛрдб рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХреЛрдб рдмрд╣реБрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИ рдФрд░ рдкреБрди: рдЙрдкрдпреЛрдЧ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рд╣рдо рдЗрд╕ рдХреЛрдб рдХреЛ рдПрд▓рдПрд╕рдкреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдзрдХреЗрд▓рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕реЗ рдПрд▓рдПрд╕рдкреА рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреНрдп рд╕рдВрдкрд╛рджрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рд╕рдорд░реНрдерди рд╣реИ)ред
рд╡реАрдПрд╕ рдХреЛрдб рдореЗрдВ рдПрд▓рдПрд╕рдкреА рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдПрдХ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╡реАрдПрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдПрдбреЗрдкреНрдЯрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП vscode-languageclient
рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЖрдкрдХреЗ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдХреНрд▓рд╛рдЗрдВрдЯ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЬрдиреНрдо рджреЗ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдПрдХ рдРрд╕рд╛ рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдпрд╛ рдПрдХ рд╕реЗрдЯ рдпрд╛ рдЗрдирдкреБрдЯ/рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рджреЗрддрд╛ рд╣реИ ( рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ )ред
рдбрд╛рд░реНрдЯ рдХреЛрдб рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдХрд╕реНрдЯрдо рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдПрд▓рдПрд╕рдкреА рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╕реНрдЯрдо рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
рдиреЛрдЯ: "рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдПрд▓рдПрд╕рдкреА рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗрд╡рд▓ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдЪреИрдирд▓ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЖрдкрдХреЛ рдЙрддреНрдкрд╛рджрди рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред"
рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдПрд▓рдПрд╕рдкреА рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдПрдХ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдмрдирд╛рдПрдВрдЧреЗ (рдЬрд┐рд╕рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрд▓рдПрд╕рдкреА рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╣реИ) рдФрд░ рдлрд┐рд░ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП рдПрдбрд╛рдкреНрдЯрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Microsoft.VisualStudio.LanguageServer.Client
NuGet рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдЙрдкрд░реЛрдХреНрдд рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдПрд▓рдПрд╕рдкреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реАрдПрд╕ рдХреЛрдб (рдФрд░ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдкрд░ рд╕реА # рдХреА рдПрдХ рдЫреЛрдЯреА рд░рд╛рд╢рд┐) рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдереЛрдбрд╝реА рдорд╛рддреНрд░рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдпрд╣ рдХреЛрдб рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЫреЛрдЯрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рд╕рд░реНрд╡рд░ рдХреЛ рд╕реНрдкреЙрди рдХрд░рдиреЗ рдФрд░ рдЖрдИрдбреАрдИ рдХреЛ рд╕реМрдВрдкрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдЖрдИрдбреАрдИ рдХреЛ рд╕реНрд╡рдпрдВ рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдкрдиреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕реАрдзреЗ рд╕рдВрд╡рд╛рдж рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рдХрдИ рд╕рдВрднрд╛рд╡рд┐рдд рддрд░реАрдХреЗ рд╣реИрдВ:
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдЯрдо рдпрд╛ рдПрдХреНрд▓рд┐рдкреНрд╕ рдЬреИрд╕реЗ рдЕрдиреНрдп рдЖрдИрдбреАрдИ рдПрд▓рдПрд╕рдкреА рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред
рдпрджрд┐ рдЖрдк рдорд╛рдирдХ рдПрд▓рдПрд╕рдкреА рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдореЗрд░реА рдЯреАрдо рд╕реНрдкрдВрджрди рдХреЛ рдПрдХреНрд▓рд┐рдкреНрд╕ рдЖрдИрдбреАрдИ рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреА рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рд╡рд┐рд╡рд┐рдз рдЙрдкрдХрд░рдг рд╕рдорд░реНрдерди рдмрд╣реБрдд рдлрд╛рдпрджреЗрдордВрдж рд╣реЛрдЧрд╛ред
рд╡реИрд╕реЗ, GitHub рдкрд░ @natebosch рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд░рдХреНрд╖рд┐рдд рдПрдХ natebosch/dart_language_server рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╣реИред рдпрд╣ рдХрд╛рдлреА рд╕рдХреНрд░рд┐рдп рд▓рдЧрддрд╛ рд╣реИред
@rcjsuen рд╣рд╛рдБ, рдпрд╣реА рдореИрдВ рдЕрдкрдиреЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ (рдореИрдВрдиреЗ рдЗрд╕ рд╕рдкреНрддрд╛рд╣ рдХреБрдЫ рдкреАрдЖрд░ рднреЗрдЬреЗ рд╣реИрдВ) :-)
рдЬрд╛рдВрдЪ рд╣реЛ рдЪреБрдХреА рд╣реИ, рдФрд░ рдореИрдВрдиреЗ рдбрд╛рд░реНрдЯ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕рд░реНрд╡рд░ рдореЗрдВ рдПрд▓рдПрд╕рдкреА рдЬреЛрдбрд╝рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдкреНрд░рдЧрддрд┐ рдпрд╣рд╛рдВ рдЯреНрд░реИрдХ рдХреА рдЧрдИ рд╣реИ:
https://github.com/dart-lang/sdk/blob/master/pkg/analysis_server/tool/lsp_spec/README.md
рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреА рдФрд░ рдЬрд░реВрд░рдд рд╣реИред рд╡реАрдПрд╕ рдХреЛрдб рдкреНрд▓рдЧрдЗрди рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдПрд▓рдПрд╕рдкреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬрдм рдпрд╣ рд╕рд░реНрд╡рд░ рдХреА рджреЛ рдкреНрд░рддрд┐рдпреЛрдВ рдХреЛ рдХрддрд╛рдИ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЬреЛ рдХреБрдЫ рднреА рдЪрд╛рд╣рд┐рдП (рдпрд╛ рддреЛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдЕрдиреБрд░реЛрдзреЛрдВ рдпрд╛ рдХрд╕реНрдЯрдо рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдЯрдо рдпрд╛ рдПрдХреНрд▓рд┐рдкреНрд╕ рдЬреИрд╕реЗ рдЕрдиреНрдп рдЖрдИрдбреАрдИ рдПрд▓рдПрд╕рдкреА рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред
рдпрджрд┐ рдЖрдк рдорд╛рдирдХ рдПрд▓рдПрд╕рдкреА рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдореЗрд░реА рдЯреАрдо рд╕реНрдкрдВрджрди рдХреЛ рдПрдХреНрд▓рд┐рдкреНрд╕ рдЖрдИрдбреАрдИ рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреА рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рд╡рд┐рд╡рд┐рдз рдЙрдкрдХрд░рдг рд╕рдорд░реНрдерди рдмрд╣реБрдд рдлрд╛рдпрджреЗрдордВрдж рд╣реЛрдЧрд╛ред