Vim எடிட்டரின் நவீனமயமாக்கப்பட்ட பதிப்பான Neovim 0.7.0 வெளியீடு

Neovim 0.7.0 வெளியிடப்பட்டது, விம் எடிட்டரின் ஃபோர்க் நீட்டிப்பு மற்றும் நெகிழ்வுத்தன்மையை அதிகரிப்பதில் கவனம் செலுத்துகிறது. இந்த திட்டம் ஏழு ஆண்டுகளுக்கும் மேலாக விம் குறியீடு தளத்தை மறுவேலை செய்து வருகிறது, இதன் விளைவாக குறியீடு பராமரிப்பை எளிதாக்கும் மாற்றங்கள் செய்யப்படுகின்றன, பல பராமரிப்பாளர்களிடையே உழைப்பைப் பிரிப்பதற்கான வழிமுறையை வழங்குகின்றன, அடிப்படை பகுதியிலிருந்து இடைமுகத்தை பிரிக்கலாம் (இடைமுகம் இருக்கலாம் உட்புறங்களைத் தொடாமல் மாற்றப்பட்டது) மற்றும் செருகுநிரல்களின் அடிப்படையில் ஒரு புதிய விரிவாக்கக்கூடிய கட்டமைப்பை செயல்படுத்தவும். திட்டத்தின் அசல் மேம்பாடுகள் Apache 2.0 உரிமத்தின் கீழ் விநியோகிக்கப்படுகின்றன, மேலும் அடிப்படை பகுதி Vim உரிமத்தின் கீழ் விநியோகிக்கப்படுகிறது. Linux (appimage), Windows மற்றும் macOS ஆகியவற்றிற்காக ஆயத்தமான அசெம்பிளிகள் தயாரிக்கப்படுகின்றன.

நியோவிமின் உருவாக்கத்தைத் தூண்டிய விம்மில் உள்ள சிக்கல்களில் ஒன்று, அதன் வீங்கிய, ஒற்றைக்கல் குறியீட்டுத் தளமாகும், இது 300 ஆயிரத்துக்கும் மேற்பட்ட சி (சி89) குறியீட்டைக் கொண்டுள்ளது. விம் கோட்பேஸின் அனைத்து நுணுக்கங்களையும் ஒரு சிலர் மட்டுமே புரிந்துகொள்கிறார்கள், மேலும் அனைத்து மாற்றங்களும் ஒரு பராமரிப்பாளரால் கட்டுப்படுத்தப்படுகின்றன, இது எடிட்டரைப் பராமரிப்பதையும் மேம்படுத்துவதையும் கடினமாக்குகிறது. GUI ஐ ஆதரிக்க Vim மையத்தில் கட்டமைக்கப்பட்ட குறியீட்டிற்குப் பதிலாக, பல்வேறு கருவித்தொகுப்புகளைப் பயன்படுத்தி இடைமுகங்களை உருவாக்க உங்களை அனுமதிக்கும் உலகளாவிய அடுக்கைப் பயன்படுத்தி Neovim முன்மொழிகிறது.

Neovim க்கான செருகுநிரல்கள் தனித்தனி செயல்முறைகளாக தொடங்கப்படுகின்றன, அதனுடன் MessagePack வடிவம் பயன்படுத்தப்படுகிறது. எடிட்டரின் அடிப்படை கூறுகளைத் தடுக்காமல், செருகுநிரல்களுடனான தொடர்பு ஒத்திசைவற்ற முறையில் மேற்கொள்ளப்படுகிறது. செருகுநிரலை அணுக, TCP சாக்கெட்டைப் பயன்படுத்தலாம், அதாவது. செருகுநிரலை வெளிப்புற கணினியில் இயக்க முடியும். அதே நேரத்தில், Neovim Vim உடன் பின்னோக்கி இணக்கமாக உள்ளது, Vimscript ஐ தொடர்ந்து ஆதரிக்கிறது (Lua மாற்றாக வழங்கப்படுகிறது) மற்றும் பெரும்பாலான நிலையான Vim செருகுநிரல்களுக்கான இணைப்புகளை ஆதரிக்கிறது. Neovim இன் மேம்பட்ட அம்சங்களை Neovim-குறிப்பிட்ட APIகளைப் பயன்படுத்தி கட்டமைக்கப்பட்ட செருகுநிரல்களில் பயன்படுத்தலாம்.

தற்போது, ​​சுமார் 130 குறிப்பிட்ட செருகுநிரல்கள் ஏற்கனவே தயார் செய்யப்பட்டுள்ளன, பல்வேறு நிரலாக்க மொழிகள் (C++, Clojure, Perl, Python, Go, Java, Lisp, Lua, Ruby) மற்றும் கட்டமைப்புகள் (Qt, ncurses, Node .js, Electron, GTK). பல பயனர் இடைமுக விருப்பங்கள் உருவாக்கப்படுகின்றன. GUI ஆட்-ஆன்கள் செருகுநிரல்களைப் போலவே இருக்கின்றன, ஆனால் செருகுநிரல்களைப் போலன்றி, அவை Neovim செயல்பாடுகளுக்கு அழைப்புகளைத் தொடங்குகின்றன, அதே நேரத்தில் செருகுநிரல்கள் Neovim க்குள் இருந்து அழைக்கப்படுகின்றன.

புதிய பதிப்பு ரிமோட் வேலைக்கான ஆரம்ப ஆதரவை வழங்குகிறது, இது சேவையகத்தில் Neovim ஐ இயக்கவும் மற்றும் கிளையன்ட் அமைப்பிலிருந்து தனி ui_client ஐப் பயன்படுத்தி இணைக்கவும் உங்களை அனுமதிக்கிறது. பிற மாற்றங்கள் பின்வருமாறு: பைதான் 2 க்கான ஆதரவு நிறுத்தப்பட்டது, கீமேப்பில் லுவா செயல்பாடுகளின் பயன்பாடு அனுமதிக்கப்பட்டுள்ளது, ஏபிஐயில் புதிய கட்டளைகள் சேர்க்கப்பட்டுள்ளன, செருகுநிரல்களை உருவாக்குவதற்கு லுவா மொழியைப் பயன்படுத்தும் திறன் மற்றும் உள்ளமைவு மேலாண்மை கணிசமாக விரிவாக்கப்பட்டுள்ளது, குறியீட்டில் உள்ள சிக்கல்களைக் கண்டறிவதற்கான கருவிகள் மேம்படுத்தப்பட்டுள்ளன, உலகளாவிய நிலைப் பட்டிக்கான ஆதரவு சேர்க்கப்பட்டுள்ளது, செயல்திறன் மேம்படுத்தல்கள் மேற்கொள்ளப்பட்டுள்ளன. உள்ளமைக்கப்பட்ட LSP கிளையண்டின் (மொழி சேவையக நெறிமுறை) திறன்கள் விரிவாக்கப்பட்டுள்ளன, இது பகுப்பாய்வு தர்க்கம் மற்றும் குறியீட்டை நிறைவு செய்வதை வெளிப்புற சேவையகங்களுக்கு மாற்ற பயன்படுகிறது.

ஆதாரம்: opennet.ru

கருத்தைச் சேர்