Рэліз тэкставага рэдактара Vim 8.2

Пасля паўтара года распрацоўкі адбыўся рэліз тэкставага рэдактара Вім 8.2, які аднесены да катэгорыі нязначных выпускаў, у якім ліквідаваны назапашаныя памылкі і прапанаваны адзінкавыя навіны.

Код Vim распаўсюджваецца пад уласнай капілефт ліцэнзіяй, сумяшчальнай з GPL, і якая дазваляе без абмежаванняў выкарыстоўваць, распаўсюджваць і перапрацоўваць код. Асноўная асаблівасць ліцэнзіі Vim звязана з вяртаннем змен - рэалізаваныя ў іншых прадуктах паляпшэння павінны быць перададзены ў зыходны праект, калі мэйнтэйнер Vim палічыць гэтыя паляпшэнні годнымі ўвагі і адправіць адпаведны запыт. Па тыпе распаўсюджвання, Vim адносіцца да Сharityware, г.зн. замест продажу праграмы ці збору ахвяраванняў на патрэбы праекту, аўтары Vim просяць пералічыць любую суму на дабрачыннасць, калі праграма спадабаецца карыстачу.

В новай версіі:

  • Рэалізавана падтрымка усплываючых вокнаў, якія, разам з уласцівасцямі тэксту, падчас апытання на канферэнцыі VimConf 2018 былі адзначаны распрацоўшчыкамі плагінаў як найбольш запатрабаваныя магчымасці, якіх не хапае ў Vim. Усплывальныя вокны дазваляюць адлюстроўваць паведамленні, урыўкі кода і любую іншую інфармацыю па-над рэдагуемым тэкстам. Дадзеныя вокны могуць быць падсветлены рознымі спосабамі, хутка адчыненыя і зачыненыя. Рэалізацыя названай функцыянальнасці запатрабавала істотна дапрацоўкі раней выкарыстоўваных механізмаў вываду на экран, а таксама пашырэнні API для забеспячэння працы са ўсплываючымі вокнамі з убудоў.
  • Дададзена магчымасць вызначэння ўласцівасцей тэксту, пры дапамозе якіх можна вылучаць колерам кавалкі тэксту ці падсвятляць адвольныя вобласці. Уласцівасці тэксту можна выкарыстоўваць у форме працавальнага ў асінхронным рэжыме механізму вылучэння тэксту, альтэрнатыўнага раней даступным магчымасцям падсвятлення сінтаксісу на базе шаблонаў. Асаблівасцю ўласцівасцяў тэксту таксама з'яўляецца тое, што яны прымацаваныя са звязаным з імі тэкстам і захоўваюцца нават пры ўстаўцы новых слоў перад вылучаным тэкстам.
  • Для нагляднай дэманстрацыі новых магчымасцяў Vim 8.2 падрыхтаваны убудова з гульнёй, якая дазваляе страляць у якія бягуць па экране авечак. Якія бягуць авечкі адлюстроўваюцца пры дапамозе ўсплывальных вокнаў, а расфарбоўка рэалізаваная праз уласцівасці тэксту.

    Рэліз тэкставага рэдактара Vim 8.2

  • Для дэманстрацыі ўласцівасцей тэксту дадаткова апублікаваны плагін govim, які выкарыстоўваецца для падсветкі сінтаксісу ў праграмах на мове Go, атрымліваючы інфармацыю аб семантыцы мовы з вонкавага LSP-сервера (Пратакол Language Server). Усплывальныя вокны ў govim выкарыстоўваюцца для вываду кантэкстных падказак для аўтадапаўнення імёнаў і адлюстравання апісанняў функцый.
    Рэліз тэкставага рэдактара Vim 8.2

  • Прапанавана новая каманда «:const» для вызначэння зменных, якія немагчыма змяніць:

    const TIMER_DELAY = 400

  • Дададзена магчымасць вызначэння слоўнікаў з літарнымі ключамі без выкарыстання двукоссяў:

    let options = #{width: 30, height: 24}

  • Дададзена магчымасць блокавых прысваенняў, якія спрашчаюць прысваенне зменным шматрадковых кавалкаў тэксту:

    let lines =<< trim END
    радок першы
    радок другі
    END

  • Дададзена магчымасць пабудовы ланцужкоў функцый пры выкліку метадаў:

    mylist->filter(filterexpr)->map(mapexpr)->sort()->join()

  • У асноўны склад уключана бібліятэка xdiff, якая дазволіла значна палепшыць уяўленне адрозненняў розных варыянтаў тэксту;
  • Дададзена настройка «modifyOtherKeys» для задання пашыраных камбінацый клавіш
  • Дададзена падтрымка кансолі ConPTY, якая дазваляе дамагчыся адлюстравання ўсіх колераў у кансолі Windows 10;
  • Мадэрнізаваны ўсталёўшчык для Windows.

Дадаткова можна адзначыць, падрыхтоўку эксперыментальнай галіны рэдактара Neovim 0.5. Neovim уяўляе сабой адгалінаванні ад Vim, сфакусаванае на падвышэнні пашыральнасці і гнуткасці. У рамках праекта ўжо больш за пяць гадоў праводзіцца агрэсіўная перапрацоўка кодавай базы Vim, у выніку якой уносяцца змены, якія спрашчаюць суправаджэнне кода, якія прадстаўляюць сродкі падзелу працы паміж некалькімі мэйнтэйнерамі, што адлучаюць інтэрфейс ад базавай часткі (інтэрфейс можна змяняць не кранаючы вантробы) і што рэалізуюць новую якая пашыраецца архітэктуру на аснове плагінаў. Убудовы да Neovim запускаюцца як асобныя працэсы, для ўзаемадзеяння з якімі выкарыстоўваецца фармат MessagePack.

Крыніца: opennet.ru

Дадаць каментар