Uvod
Vim je uređivač teksta i poboljšana verzija uređivača Vi. Dizajniran je za korištenje kao CLI (sučelje naredbenog retka) i GUI (grafičko korisničko sučelje) aplikacija.
Dizajnirao ga je i razvio Bram Moolenaar, a prvi put je objavljen u studenom 1991. VIM je besplatni uređivač teksta otvorenog koda koji se temelji na ekranu. Proširenje na više platformi učinilo ga je prisutnim za nekoliko drugih sustava od objavljivanja za Amigu. Čitatelji Linux Journala 2018. godine proglasili su ga najpoznatijim urednikom; Istraživanje programera, tj. Stack Overflow, utvrdilo je da je to treći najpoznatiji uređivač teksta u 2015. i 5. najpoznatije razvojno okruženje u 2019.
U ovom vodiču ćemo instalirati VIM editor na Ubuntu operativni sustav. Za instalaciju provjerite imamo li ažuriranu verziju Ubuntua i funkcionalni terminal.
Preduvjeti
- Ubuntu
- Terminal
Kratka povijest VIM-a
Preteču VIM-a, Stevie, izradio je Tim Thompson 1987. za Atari ST, a dodatno ga je poboljšao G.R. Walter i Tony Andrews. Bram Moolenaar počeo je raditi na VIM-u, temeljeći svoju implementaciju na Stevie za sustav Amiga 1988., zajedno s prvim javnim izdanjem 1991.
Naslov 'ZAŠTO' bila je skraćenica za 'Vi Imitacija' tijekom prvog izdanja, ali je modificiran na 'Poboljšali smo se' 1993. godine.
Licenca VIM-a
VIM se objavljuje prema Vim licenci. Sadrži nekoliko klauzula o dobrotvornim programima koje potiču korisnike kojima se sviđa aplikacija da razmotre davanje doprinosa djeci. Vim licenca odgovara GNU Općoj javnoj licenci jedinstvenom klauzulom koja dopušta distribuciju promijenjenih kopija na GNU GPL 2.0 ili novijim verzijama.
Sučelje VIM-a
Sučelje VIM-a ne temelji se na ikonama ili izbornicima već na naredbama koje se nalaze unutar tekstualnog korisničkog sučelja kao što je VI; gVim, njegov GUI mod, uključuje alatne trake i izbornike za općenito korištene naredbe; međutim, potpunu funkcionalnost i dalje predstavlja način naredbenog retka. Vi nastoji dopustiti daktilografu da stavi svoje prste na početni red, što bi mogla biti prednost za tipkača na dodir.
VIM editor sadrži ugrađeni vodič za početnike poznat kao vimtutor, koji se u osnovi instalira s Vimom. Međutim, to je različita izvršna datoteka i može se izvršiti pomoću naredbe ljuske. Korisnički priručnik za Vim detaljno opisuje značajke Vima i može se pronaći na internetu ili se može pokrenuti unutar Vima.
linkedlist i arraylist
Također, Vim uključuje ugrađenu značajku pomoći koja korisnicima omogućuje postavljanje pitanja i navigaciju pomoću značajki i naredbi.
Registri
Vim nudi nekoliko jedinstvenih memorijskih unosa poznatih kao registri (nemojte ih brkati s procesorskim ili hardverskim registrima). Prilikom kopiranja, lijepljenja, brisanja ili rezanja teksta, korisnik može odabrati spremanje manipuliranog teksta unutar registra. Dostupno je trideset i šest registara opće namjene koji su povezani s brojevima i slovima te niz jedinstvenih koji ili uključuju jedinstvene vrijednosti (posljednja naredba, trenutni naziv datoteke, itd.) ili služe jedinstvenom cilju.
Načini rada
Vim podržava dva ili više načina uređivanja kao što je vi. Znakovi tipa navedeni su ili kao nizovi naredbi ili se unose kao tekst, ovisno o načinu rada. U Vimu je dostupno 12 načina uređivanja, šest varijanti i šest uobičajenih načina:
Prilagodba VIM-a
Vim je vrlo proširiv i prilagodljiv, što ga čini zanimljivim alatom za korisnike koji zahtijevaju veću količinu fleksibilnosti i kontrole nad platformom za uređivanje teksta. Unos teksta omogućuje niz značajki razvijenih za poboljšanje učinkovitosti tipkovnice. Korisnici mogu pokretati teške naredbe pomoću 'preslikavanje ključeva' , koji se može proširiti i prilagoditi. The 'snimanje' aspekt dopušta uspostavljanje makronaredbi za aktiviranje nizova pritisaka tipki i pozivanje korisnički definiranih ili internih preslikavanja i funkcija.
Kratice, isto kao preslikavanje tipki ili makronaredbe, omogućuju proširenje kratkih tekstualnih nizova u duže, a mogu se koristiti i za ispravljanje pogrešaka. Također, Vim omogućuje 'jednostavni' način za kupce koji traže lakše rješenje za uređivanje teksta.
niz u Javi
Dostupno je nekoliko dodataka koji poboljšavaju i uključuju nove funkcije u Vimu. Obično su ovi dodaci napisani u internom skriptnom jeziku Vim, vimscript (koji se naziva i VimL), ali se također mogu specificirati u drugim jezicima.
Mnogi su projekti grupirali složene prilagodbe i skripte i usredotočili se na pretvaranje Vima u resurs za određeni zadatak ili uključivanje većeg okusa u njegovu prirodu. Neki primjeri su VimOutliner, koji olakšava udoban outliner za korisnike sustava sličnih Unixu, i Cream, koji omogućuje Vimu da se ponaša kao uređivač klikni i tipkaj.
Poboljšanja i značajke Vima
Vim uključuje način kompatibilnosti s vi, ali kada se ovaj način ne koristi, Vim sadrži nekoliko poboljšanja u odnosu na vi. Ali Vim nije u potpunosti prikladan s vi-om kako je specificirano u POSIX-u i Single Unix Specification podjednako u načinu kompatibilnosti. Programeri Vima rekli su da je vrlo prikladan za Vi.
- Nekoliko poboljšanja Vima sadrže funkcije dovršavanja, spajanje i usporedbu datoteke (zvane vimdiff), poboljšane regularne izraze, sveobuhvatan razvijen sustav pomoći, skriptne jezike uključujući podršku za dodatke, grafičko korisničko sučelje (poznato kao gvim), interakciju miša (bez i s GUI), ograničeni aspekti poput razvojnog okruženja, savijanje, provjera pravopisa, uređivanje arhiviranih i komprimiranih datoteka u tar, zip, bzip2 i gzip datotekama i formatima preko mrežnih protokola, kao što su HTTP, FTP i SSH, s karticama i podijeljeno prozori, očuvanje stanja sesije, podrška za Unicode i više jezika, povijest položaja pokazivača i pretraživanja, isticanje sintakse, naredba za prijenos sesije, vizualni način rada, grananje i višerazinska povijest ponavljanja/poništavanja koja se može nastaviti tijekom sesija uređivanja.
- Vim pohranjuje promjene korisnika u swap datoteku koristeći ekstenziju '.swp' dok radi.
- Ova se datoteka može koristiti za vraćanje nakon kvara. Vim će upozoriti korisnike ako pokušaju otvoriti bilo koju datoteku i zamijeniti je s već postojećim, a Vim će upotrijebiti swap datoteku koristeći ekstenziju '.swo' ako korisnik nastavi.
- Funkcionalnost se može deaktivirati.
Vim skripta
Također je poznat kao VimL ili Vimscript. Vim skripta je skriptni jezik integriran u Vim. Rane verzije Vim-a dodale su naredbe za definicije funkcija i kontrolni tok, što je bivši uređivački jezik stvarnog vi uređivača. Od verzije 7, Vim skripta podržava razvijenije tipove podataka, uključujući rječnike i popise, te lakši način objektno orijentiranog programiranja. Mnoge ugrađene funkcije, uključujući filter() i map(), dopuštaju zajednički funkcionalni programski obrazac, a Vim skripta sadrži lambda od verzije 8.0. Uglavnom se Vim skripta navodi u obliku imperativnog programiranja.
Vim makronaredbe mogu uključivati redoslijed naredbi normalnog načina rada, ali također mogu zahtijevati bivše funkcije ili naredbe navedene u Vim skripti za teže zadatke. Većina ekstenzija (poznatih kao dodaci ili skripte) Vim funkcionalnosti navedene su u Vim skripti, iako dodaci mogu koristiti i druge jezike, kao što su Racket, Tcl, Ruby, Lua, Python ili Perl. Ovi se dodaci mogu instalirati ručno ili ih može instalirati upravitelj dodataka, poput Vim-Plug, Pathogen ili Vundle.
Datoteke Vim skripte spremaju se kao običan tekst, isto kao i ostali kodovi, a .vim je obično ekstenzija naziva datoteke. Jedna važna iznimka je konfiguracijska datoteka Vima, tj. .vimrc.
Dostupnost Vim
Dok je vi editor izvorno bio dostupan na Unix operativnim sustavima, Vim je isporučen na nekoliko operativnih sustava, kao što su Atari MiNT, AmigaOS, DOS, BeOS, Windows koji počinju od Windows NT 3.1, MorphOS, OS/390, OS/2, OpenVMS, RISC OS, QNX, BSD, klasični Mac OS i Linux. Vim je također prenesen s Apple macOS-om. Priključci neovisni o Vimu dostupni su za iOS i Android.
Vim vilica
Neovim je Vim fork koji ima za cilj razviti mogućnost održavanja i proširivost Vima. Dostupno je nekoliko značajki ovog forka, uključujući podršku za ugrađeni protokol jezičnog poslužitelja, podršku za asinkroni I/O i podršku za Lua skriptiranje s tumačem jezika luaJIT. To je softverski projekt otvorenog koda, a njegov izvorni kod prisutan je na GitHubu.
Nakon što je odbačena zakrpa za Vim koja pomaže multi-threading, projekt Neovim započeo je 2014. U ožujku 2014. dobro je prikupljena sredstva, podržavajući barem jednog programera s punim radnim vremenom. Mnoga sučelja podržavaju razvoj koji koristi mogućnosti Neovim.
Neovim je 2. srpnja 2021. postigao ugrađenu podršku za jezični poslužiteljski protokol i potpunu podršku za Lua, kao što je mogućnost pisanja primarne konfiguracijske datoteke na jeziku Lua umjesto VimL-a s verzijom Neovim 0.5.
Instalacija VIM-a
Instaliranje VIM uređivača prilično je jednostavno, potrebna je samo jedna naredba za instalaciju. Sljedeća naredba koristi se za instaliranje VIM editora.
$ sudo apt-get install vim
Tip 'I' i pritisnite Unesi , pokrenut će instalaciju potrebnih paketa i aplikacije.
Nakon toga, možemo pokrenuti vim iz terminala ili upravitelja aplikacija.
java duga u int
Možemo ga pronaći u sustavu upisivanjem VIM, kao što smo učinili ispod.
Kliknite na ikonu i otvorit će se terminal za VIM editor. Izgleda otprilike kao dolje.
Pa, uspješno smo instalirali VIM editor na naš sustav. Sada ga možemo koristiti za kodiranje u bilo kojem programskom jeziku.