Neovim 0.4 është në dispozicion, një version i përmirësuar i redaktuesit Vim

Publikuar lëshimi Neovim 0.4, një degëzim i redaktuesit Vim, i fokusuar në përmirësimin e zgjerueshmërisë dhe fleksibilitetit. Punimet origjinale të projektit shpërndahen nën licencën Apache 2.0, ndërsa pjesa thelbësore nën licencën Vim.

Në kuadër të projektit, për më shumë se pesë vjet po bëhet përshtatja e bazës së kodit Vim, rezultat i së cilës është ndryshimi i lehtësuar i mbajtjes së kodit, ofrimi i mjeteve për ndarjen e punës midis disa kontribuesve, ndarjen e interfaces nga pjesa thelbësore (interface mund të ndryshohet pa prekur brendësinë) dhe realizimi i një arkitekture të zgjerueshme në bazë të plug-in-eve.

Një nga problemet e Vim-it që çoi në krijimin e Neovim janë bazat e kodit monolit, të fryra, që përmbajnë më shumë se 300 mijë rreshta kodi në gjuhën C (C89). Në të gjitha nuancat e bazës së kodit të Vim-it, vetëm disa persona e kuptojnë, dhe të gjitha ndryshimet kontrollohen nga një mbajtës, çka e vështirëson mbështetje dhe punën për përmirësimin e editorit. Në vend të kodit të integruar në kernelin e Vim për mbështetje GUI, Neovim ofron një ndërfaqe universale që lejon krijimin e ndërfaqeve duke përdorur toolkit të ndryshme.

Pluginet për Neovim ekzekutohen si procese të veçanta, për interaksionin me të cilat përdoret formati MessagePack. Bashkëpunimi me pluginet bëhet në mënyrë asinkrone, pa bllokimin e komponentëve bazë të editorit. Një socket TCP mund të përdoret për të komunikuar me pluginin, pra, plugin mund të ekzekutohet në një sistem të jashtëm. Në të njëjtën kohë, Neovim mbetet e përputhshme me Vim, vazhdon të mbështesë Vimscript (si alternativë ofrohet Lua) dhe mbështet lidhjet e shumicës së pluginave standarde të Vim. Mundësitë e avancuara të Neovim mund të përdoren në pluginet e krijuara duke përdorur API-në specifike për Neovim.

Aktualisht janë përgatitur rreth 80 plugin të veçantë, janë të disponueshme lidhje për krijimin e pluginave dhe implementimin e ndërfaqeve duke përdorur gjuhë të ndryshme programimi (C++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) dhe korniza (Qt5, ncurses, Node.js, Electron, GTK+). Po zhvillohen disa variante të ndërfaqeve të përdoruesit. Shtesat GUI në shumë pika i ngjajnë pluginave, por, ndryshe nga pluginat, ato nisin thirrjen e funksioneve të Neovim, ndërsa pluginat thirren nga Neovim.

Disa disa ndryshimeve në versionin e ri:

  • Shtuar njĂ« sasi tĂ« madhe funksionesh tĂ« reja API dhe ngjarjesh tĂ« interfesĂ«s pĂ«rdoruesit.
  • Shtuar njĂ« bibliotekĂ« standarde tĂ« re Nvim-Lua pĂ«r zhvillimin e plugineve nĂ« gjuhĂ«n Lua.
  • Vazhduar zhvillimi i protokollit tĂ« interfesĂ«s pĂ«rdoruesit, i cili pĂ«rditĂ«son informacionin nĂ« ekran nĂ« nivelin e rreshtave, jo si karaktere tĂ« veçanta.
  • Shtuar mbĂ«shtetje pĂ«r dritare tĂ« plota plovizĂ«se, tĂ« cilat mund tĂ« vendosen nĂ« çdo vend, tĂ« bashkohen, tĂ« lidhin me buferĂ« tĂ« veçantĂ« redaktimi, tĂ« grupohen nĂ« modin Multigrid.
  • Shtuar opsioni ‘pumblend’ pĂ«r menu tĂ«rheqĂ«se gjysmĂ« transparente.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster