рд╡рд┐рд╕реНрддрд╛рд░ рд░ рд▓рдЪрд┐рд▓реЛрдкрди рдмрдврд╛рдЙрдирдорд╛ рдХреЗрдиреНрджреНрд░рд┐рдд рднрд┐рдо рд╕рдореНрдкрд╛рджрдХрдХреЛ рдлреЛрд░реНрдХ, рдирд┐рдпреЛрднрд┐рдо реж.рем.реж, рдЬрд╛рд░реА рдЧрд░рд┐рдПрдХреЛ рдЫред рдкрд░рд┐рдпреЛрдЬрдирд╛рд▓реЗ рд╕рд╛рдд рд╡рд░реНрд╖рднрдиреНрджрд╛ рдмрдвреА рд╕рдордпрджреЗрдЦрд┐ рднрд┐рдо рдХреЛрдбрдмреЗрд╕рдорд╛ рдкреБрди: рдХрд╛рдо рдЧрд░реНрджреИ рдЖрдПрдХреЛ рдЫ, рдХреЛрдб рдорд░реНрдорддрд╕рдореНрднрд╛рд░рд▓рд╛рдИ рд╕рд░рд▓ рдмрдирд╛рдЙрдиреЗ, рдзреЗрд░реИ рдорд░реНрдорддрдХрд░реНрддрд╛рд╣рд░реВ рдмреАрдЪ рд╢реНрд░рдо рд╡рд┐рднрд╛рдЬрди рдЧрд░реНрди рдЙрдкрдХрд░рдгрд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрдиреЗ, рдЗрдиреНрдЯрд░рдлреЗрд╕рд▓рд╛рдИ рдХреЛрд░рдмрд╛рдЯ рдЕрд▓рдЧ рдЧрд░реНрдиреЗ (рдЗрдиреНрдЯрд░рдиреЗрд▓рд╣рд░реВрд▓рд╛рдИ рдирдЫреЛрдЗрдХрди рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ) рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдкреНрд░рд╕реНрддреБрдд рдЧрд░реНрджреИ, рд░ рдирдпрд╛рдБ, рдПрдХреНрд╕реНрдЯреЗрдиреНрд╕рд┐рдмрд▓, рдкреНрд▓рдЧрдЗрди-рдЖрдзрд╛рд░рд┐рдд рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рд▓рд╛рдЧреВ рдЧрд░реНрдиреЗред рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рдореВрд▓ рдХрд╛рдо рдЕрдкрд╛рдЪреЗ реи.реж рдЗрдЬрд╛рдЬрддрдкрддреНрд░ рдЕрдиреНрддрд░реНрдЧрдд рдЗрдЬрд╛рдЬрддрдкрддреНрд░ рдкреНрд░рд╛рдкреНрдд рдЫ, рд░ рдХреЛрд░ рднрд╛рдЧ рднрд┐рдо рдЗрдЬрд╛рдЬрддрдкрддреНрд░ рдЕрдиреНрддрд░реНрдЧрдд рдЗрдЬрд╛рдЬрддрдкрддреНрд░ рдкреНрд░рд╛рдкреНрдд рдЫред рд╕рдорд╛рдкреНрдд рдирд┐рд░реНрдорд╛рдгрд╣рд░реВ рдЙрдкрд▓рдмреНрдз рдЫрдиреН Linux (рдЫрд╡рд┐), Windows ╨╕ macOS.
Vim рдХреЛ рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рдордзреНрдпреЗ рдПрдХ рдЬрд╕рд▓реЗ Neovim рдХреЛ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдкреНрд░реЗрд░рд┐рдд рдЧрд░реНтАНрдпреЛ рдпрд╕рдХреЛ рдлреВрд▓реЗрдХреЛ, рдореЛрдиреЛрд▓рд┐рдерд┐рдХ рдХреЛрдб рдЖрдзрд╛рд░ рдерд┐рдпреЛ, рдЬрд╕рдорд╛ C (C300) рдХреЛрдбрдХреЛ 89 рд╣рдЬрд╛рд░ рднрдиреНрджрд╛ рдмрдвреА рд▓рд╛рдЗрдирд╣рд░реВ рдерд┐рдПред рдХреЗрд╡рд▓ рдХреЗрд╣рд┐ рд╡реНрдпрдХреНрддрд┐рд╣рд░реВрд▓реЗ Vim рдХреЛрдбрдмреЗрд╕рдХрд╛ рд╕рдмреИ рд╕реВрдХреНрд╖реНрдорддрд╛рд╣рд░реВ рдмреБрдЭреНрджрдЫрдиреН, рд░ рд╕рдмреИ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ рдПрдХ рд░рдЦрд░рдЦрд╛рд╡рдХрд░реНрддрд╛рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдиреНрддреНрд░рд┐рдд рд╣реБрдиреНрдЫрдиреН, рдЬрд╕рд▓реЗ рд╕рдореНрдкрд╛рджрдХрд▓рд╛рдИ рдХрд╛рдпрдо рд░рд╛рдЦреНрди рд░ рд╕реБрдзрд╛рд░ рдЧрд░реНрди рдЧрд╛рд╣реНрд░реЛ рдмрдирд╛рдЙрдБрдЫред GUI рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрди Vim рдХреЛрд░рдорд╛ рдирд┐рд░реНрдорд┐рдд рдХреЛрдбрдХреЛ рд╕рдЯреНрдЯрд╛, Neovim рд▓реЗ рдПрдХ рд╡рд┐рд╢реНрд╡рд╡реНрдпрд╛рдкреА рддрд╣ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░реНрджрдЫ рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╡рд┐рднрд┐рдиреНрди рдЯреВрд▓рдХрд┐рдЯрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдЗрдиреНрдЯрд░рдлреЗрд╕рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред
Neovim рдХрд╛ рд▓рд╛рдЧрд┐ рдкреНрд▓рдЧрдЗрдирд╣рд░реВ MessagePack рдврд╛рдБрдЪрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рдХрд╛ рд▓рд╛рдЧрд┐ рдЫреБрдЯреНрдЯреИ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдХреЛ рд░реВрдкрдорд╛ рд╕реБрд░реВ рдЧрд░рд┐рдиреНрдЫред рд╕рдореНрдкрд╛рджрдХрдХреЛ рдЖрдзрд╛рд░рднреВрдд рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВ рдЕрд╡рд░реБрджреНрдз рдирдЧрд░реАрдХрди рдкреНрд▓рдЧрдЗрдирд╣рд░реВрд╕рдБрдЧрдХреЛ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛ рдПрд╕рд┐рдиреНрдХреНрд░реЛрдирд╕ рд░реВрдкрдорд╛ рдЧрд░рд┐рдиреНрдЫред рдкреНрд▓рдЧрдЗрди рдкрд╣реБрдБрдЪ рдЧрд░реНрди, рдПрдХ TCP рд╕рдХреЗрдЯ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рдЕрд░реНрдерд╛рддреНред рдкреНрд▓рдЧрдЗрди рдмрд╛рд╣реНрдп рдкреНрд░рдгрд╛рд▓реАрдорд╛ рдЪрд▓рд╛рдЙрди рд╕рдХрд┐рдиреНрдЫред рдЙрд╣реА рд╕рдордпрдорд╛, Neovim Vim рд╕рдБрдЧ рдкрдЫрд╛рдбреА рдорд┐рд▓реНрджреЛ рд░рд╣рдиреНрдЫ, Vimscript рд╕рдорд░реНрдерди рдЧрд░реНрди рдЬрд╛рд░реА рд░рд╛рдЦреНрдЫ (Lua рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдкрдорд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдПрдХреЛ рдЫ) рд░ рдзреЗрд░реИ рдорд╛рдирдХ Vim рдкреНрд▓рдЧрдЗрдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЬрдбрд╛рдирд╣рд░реВ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫред Neovim рдХреЛ рдЙрдиреНрдирдд рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ Neovim-рд╡рд┐рд╢реЗрд╖ APIs рдкреНрд░рдпреЛрдЧ рдЧрд░реА рдирд┐рд░реНрдорд┐рдд рдкреНрд▓рдЧрдЗрдирд╣рд░реВрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред
рд╣рд╛рд▓, рд▓рдЧрднрдЧ 130 рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд▓рдЧрдЗрдирд╣рд░реВ рдкрд╣рд┐рд▓реЗ рдиреИ рддрдпрд╛рд░ рднрдЗрд╕рдХреЗрдХрд╛ рдЫрдиреН, рдкреНрд▓рдЧрдЗрдирд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд░ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдЩ рднрд╛рд╖рд╛рд╣рд░реВ (C++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) рд░ рдлреНрд░реЗрдорд╡рд░реНрдХрд╣рд░реВ (Qt, ncurses, Node .js, Electron, GTK)ред рдзреЗрд░реИ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдиреНрдЯрд░рдлреЗрд╕ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рд╡рд┐рдХрд╛рд╕ рднрдЗрд░рд╣реЗрдХреЛ рдЫред GUI рдПрдб-рдЕрдирд╣рд░реВ рдзреЗрд░реИ рдкреНрд▓рдЧрдЗрдирд╣рд░реВ рдЬрд╕реНрддреИ рдЫрдиреН, рддрд░ рдкреНрд▓рдЧрдЗрдирд╣рд░реВрдХреЛ рд╡рд┐рдкрд░реАрдд, рддрд┐рдиреАрд╣рд░реВрд▓реЗ Neovim рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВрдорд╛ рдХрд▓рд╣рд░реВ рд╕реБрд░реБ рдЧрд░реНрдЫрдиреН, рдЬрдмрдХрд┐ рдкреНрд▓рдЧрдЗрдирд╣рд░реВ Neovim рднрд┐рддреНрд░рдмрд╛рдЯ рдмреЛрд▓рд╛рдЗрдиреНрдЫред
рдирдпрд╛рдБ рд╕рдВрд╕реНрдХрд░рдгрд▓реЗ рдЯрд╛рдврд╛рдХреЛ рдХрд╛рдордХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рд╛рд░рдореНрднрд┐рдХ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ, рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ Neovim рдЪрд▓рд╛рдЙрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рд╕рд░реНрднрд░ рд░ рдЫреБрдЯреНрдЯреИ ui_client рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдХреНрд▓рд╛рдЗрдиреНрдЯ рдкреНрд░рдгрд╛рд▓реАрдмрд╛рдЯ рдпрд╕рдорд╛ рдЬрдбрд╛рди рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдЕрдиреНрдп рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрдорд╛ рд╕рдорд╛рд╡реЗрд╢ рдЫрдиреН: Python 2 рд╕рдорд░реНрдерди рдмрдиреНрдж рдЧрд░рд┐рдПрдХреЛ рдЫ, рдХрд┐рдореНрдпрд╛рдкрд╣рд░реВрдорд╛ Lua рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧрд▓рд╛рдИ рдЕрдиреБрдорддрд┐ рджрд┐рдЗрдПрдХреЛ рдЫ, API рдорд╛ рдирдпрд╛рдБ рдЖрджреЗрд╢рд╣рд░реВ рдердкрд┐рдПрдХрд╛ рдЫрдиреН, рдкреНрд▓рдЧрдЗрди рд╡рд┐рдХрд╛рд╕ рд░ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдирдХреЛ рд▓рд╛рдЧрд┐ Lua рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛рд╣рд░реВ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдкрдорд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдХреЛрдб рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХ рдЙрдкрдХрд░рдгрд╣рд░реВ рд╕реБрдзрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫ, рд╡рд┐рд╢реНрд╡рд╡реНрдпрд╛рдкреА рд╕реНрдерд┐рддрд┐ рдкрдЯреНрдЯреАрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдПрдХреЛ рдЫ, рд░ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рдЕрдиреБрдХреВрд▓рдирд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫред рдирд┐рд░реНрдорд┐рдд LSP (рднрд╛рд╖рд╛ рд╕рд░реНрднрд░ рдкреНрд░реЛрдЯреЛрдХрд▓) рдХреНрд▓рд╛рдЗрдиреНрдЯрдХреЛ рдХреНрд╖рдорддрд╛рд╣рд░реВ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓реЗ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд░ рд╕реНрд╡рдд: рдкреВрд░реНрдгрддрд╛ рддрд░реНрдХрдХреЛ рдмрд╛рд╣реНрдпрдХрд░рдгрд▓рд╛рдИ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рд╕рд░реНрднрд░рд╣рд░реВ.
рд╕реНрд░реЛрдд: opennet.ru
