рдбреЗрдв рд╡рд░реНрд╖рдХреЛ рд╡рд┐рдХрд╛рд╕рдкрдЫрд┐
Vim рдХреЛрдб
╨Т
- рдкрдк-рдЕрдк рд╡рд┐рдиреНрдбреЛрдЬрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬреБрди, рдкрд╛рда рдЧреБрдгрд╣рд░реВ рд╕рд╣рд┐рдд, рдкреНрд▓рдЧрдЗрди рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рд╕рдмреИрднрдиреНрджрд╛ рдЕрдиреБрд░реЛрдз рдЧрд░рд┐рдПрдХрд╛ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВрдХреЛ рд░реВрдкрдорд╛ рдиреЛрдЯ рдЧрд░реЗ рдЬреБрди VimConf 2018 рд╕рдореНрдореЗрд▓рдирдорд╛ рд╕рд░реНрд╡реЗрдХреНрд╖рдгрдорд╛ Vim рдХреЛ рдЕрднрд╛рд╡ рдЫред рдкрдк-рдЕрдкрд╣рд░реВрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕рдиреНрджреЗрд╢рд╣рд░реВ, рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯрд╣рд░реВ, рд░ рд╕рдореНрдкрд╛рджрди рдпреЛрдЧреНрдп рдкрд╛рдардХреЛ рд╢реАрд░реНрд╖рдорд╛ рдХреБрдиреИ рдкрдирд┐ рдЕрдиреНрдп рдЬрд╛рдирдХрд╛рд░реАрд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдпреА рдЭреНрдпрд╛рд▓рд╣рд░реВ рд╡рд┐рднрд┐рдиреНрди рддрд░рд┐рдХрд╛рдорд╛ рдЙрдЬреНрдпрд╛рд▓реЛ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ рд░ рдЪрд╛рдБрдбреИ рдЦреЛрд▓реНрди рд░ рдмрдиреНрдж рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдпрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд▓реЗ рдкрд╣рд┐рд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдПрдХреЛ рд╕реНрдХреНрд░рд┐рди рдбрд┐рд╕реНрдкреНрд▓реЗ рдореЗрдХрд╛рдирд┐рдЬрдорд╣рд░реВрдорд╛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд╕реБрдзрд╛рд░рд╣рд░реВ рдЖрд╡рд╢реНрдпрдХ рдЫ, рд╕рд╛рдереИ рдкреНрд▓рдЧ-рдЗрдирд╣рд░реВрдмрд╛рдЯ рдкрдк-рдЕрдк рд╡рд┐рдиреНрдбреЛрд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрди API рд╡рд┐рд╕реНрддрд╛рд░ред
- рдкрд╛рда рдЧреБрдгрд╣рд░реВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдердкрд┐рдпреЛ, рдЬреБрди рдкрд╛рдардХрд╛ рдЯреБрдХреНрд░рд╛рд╣рд░реВ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдЧрд░реНрди рд╡рд╛ рдордирдорд╛рдиреА рдХреНрд╖реЗрддреНрд░рд╣рд░реВ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдкрд╛рда рдЧреБрдгрд╣рд░реВ рдПрд╕рд┐рдиреНрдХреНрд░реЛрдирд╕ рдЯреЗрдХреНрд╕реНрдЯ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдЩ рдЗрдиреНрдЬрд┐рдирдХреЛ рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рдкрд╣рд┐рд▓реЗ рдЙрдкрд▓рдмреНрдз рдЯреЗрдореНрдкреНрд▓реЗрдЯ-рдЖрдзрд╛рд░рд┐рдд рд╕рд┐рдиреНрдЯреНрдпрд╛рдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдЩ рдХреНрд╖рдорддрд╛рд╣рд░реВрдХреЛ рд╡рд┐рдХрд▓реНрдкред рдкрд╛рда рдЧреБрдгрд╣рд░реВрдХреЛ рдЕрд░реНрдХреЛ рд╡рд┐рд╢реЗрд╖ рд╡рд┐рд╢реЗрд╖рддрд╛ рднрдиреЗрдХреЛ рддрд┐рдиреАрд╣рд░реВрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдкрд╛рдард╕рдБрдЧ рдЬреЛрдбрд┐рдПрдХреЛ рд╣реБрдиреНрдЫ рд░ рдЪрдпрди рдЧрд░рд┐рдПрдХреЛ рдкрд╛рда рдЕрдШрд┐ рдирдпрд╛рдБ рд╢рдмреНрджрд╣рд░реВ рдШреБрд╕рд╛рдЙрдБрджрд╛ рдкрдирд┐ рд╕реБрд░рдХреНрд╖рд┐рдд рдЧрд░рд┐рдиреНрдЫред
- Vim 8.2 рдХреЛ рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди
рддрдпрд╛рд░ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рд╕реНрдХреНрд░рд┐рдирдорд╛ рджреМрдбрд┐рд░рд╣реЗрдХреЛ рднреЗрдбрд╛ рд╢реВрдЯ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗ рдЦреЗрд▓рд╕рдБрдЧ рдкреНрд▓рдЧрдЗрди рдЧрд░реНрдиреБрд╣реЛрд╕реНред рджреМрдбрд┐рд░рд╣реЗрдХреЛ рднреЗрдбрд╛рд╣рд░реВ рдкрдк-рдЕрдкрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реБрдиреНрдЫрдиреН, рд░ рд░рдЩрд╣рд░реВ рдкрд╛рда рдЧреБрдгрд╣рд░реВ рдорд╛рд░реНрдлрдд рд▓рд╛рдЧреВ рдЧрд░рд┐рдиреНрдЫред - рдкрд╛рда рдЧреБрдгрд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди рдкреНрд▓рдЧрдЗрди рдердк рд░реВрдкрдорд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫ
govim , рдЧреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд╣рд░реВрдорд╛ рд╕рд┐рдиреНрдЯреНрдпрд╛рдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдЩрдХрд╛ тАЛтАЛрд▓рд╛рдЧрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рдмрд╛рд╣реНрдп LSP рд╕рд░реНрднрд░рдмрд╛рдЯ рднрд╛рд╖рд╛рдХреЛ рдЕрд░реНрдерд╢рд╛рд╕реНрддреНрд░рдХреЛ рдмрд╛рд░реЗрдорд╛ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрджреИ (рднрд╛рд╖рд╛ рд╕рд░реНрднрд░ рдкреНрд░реЛрдЯреЛрдХрд▓ )ред govim рдорд╛ рдкрдк-рдЕрдкрд╣рд░реВ рдирд╛рдо рдкреВрд░рд╛ рдЧрд░реНрди рд░ рдХрд╛рд░реНрдп рд╡рд┐рд╡рд░рдгрд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╕рдВрдХреЗрддрд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред
- рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рдирд╕рдХрд┐рдиреЗ рдЪрд░рд╣рд░реВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрди рдирдпрд╛рдБ ": const" рдЖрджреЗрд╢ рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдПрдХреЛ рдЫ:
const TIMER_DELAY = 400
- рдЙрджреНрдзрд░рдгрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдирдЧрд░реА рд╢рд╛рдмреНрджрд┐рдХ рдХреБрдЮреНрдЬреАрд╣рд░реВрд╕рдБрдЧ рд╢рдмреНрджрдХреЛрд╢рд╣рд░реВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдердкрд┐рдпреЛ:
рд╡рд┐рдХрд▓реНрдк рджрд┐рдиреБрд╣реЛрд╕реН = #{рдЪреМрдбрд╛рдЗ: рейреж, рдЙрдЪрд╛рдЗ: реирек}
- рдЕрд╕рд╛рдЗрдирдореЗрдиреНрдЯрд╣рд░реВ рдмреНрд▓рдХ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдердкрд┐рдпреЛ, рдкрд╛рдардХреЛ рдмрд╣реБ-рд▓рд╛рдЗрди рдЯреБрдХреНрд░рд╛рд╣рд░реВрд▓рд╛рдИ рдЪрд░рд╣рд░реВрдорд╛ рдЕрд╕рд╛рдЗрди рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрдБрджреИ:
рд▓рд╛рдЗрдирд╣рд░реВ рджрд┐рдиреБрд╣реЛрд╕реН =<< рдЯреНрд░рд┐рдо END
рд▓рд╛рдЗрди рдПрдХ
рд▓рд╛рдЗрди рджреБрдИ
рдЕрдиреНрдд - рд╡рд┐рдзрд┐рд╣рд░реВ рдХрд▓ рдЧрд░реНрджрд╛ рдкреНрд░рдХрд╛рд░реНрдп рдЪреЗрдирд╣рд░реВ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдердкрд┐рдпреЛ:
mylist->filter(filterexpr)->map(mapexpr)->sort()->join()
- рдореБрдЦреНрдп рд╕рдВрд░рдЪрдирд╛рдорд╛ xdiff рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕рдорд╛рд╡реЗрд╢ рдЫ, рдЬрд╕рд▓реЗ рд╡рд┐рднрд┐рдиреНрди рдкрд╛рда рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рдмреАрдЪрдХреЛ рднрд┐рдиреНрдирддрд╛рд╣рд░реВрдХреЛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡рд▓рд╛рдИ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдкрдорд╛ рд╕реБрдзрд╛рд░ рдЧрд░реЗрдХреЛ рдЫ;
- рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХреБрдЮреНрдЬреА рд╕рдВрдпреЛрдЬрдирд╣рд░реВ рд╕реЗрдЯ рдЧрд░реНрди "modifyOtherKeys" рд╕реЗрдЯрд┐рдЩ рдердкрд┐рдпреЛ
- ConPTY рдХрдиреНрд╕реЛрд▓рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛ, рддрдкрд╛рдИрдВрд▓рд╛рдИ Windows 10 рдХрдиреНрд╕реЛрд▓рдорд╛ рд╕рдмреИ рд░рдЩрд╣рд░реВ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдБрджреИ;
- Windows рдХреЛ рд▓рд╛рдЧрд┐ рд╕реНрдерд╛рдкрдирд╛рдХрд░реНрддрд╛ рдЖрдзреБрдирд┐рдХреАрдХрд░рдг рдЧрд░рд┐рдПрдХреЛ рдЫред
рдердк рд░реВрдкрдорд╛, рдпреЛ рдиреЛрдЯ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ
рд╕реНрд░реЛрдд: opennet.ru