Vi vs vim, vai onko mitään syytä miksi haluaisin koskaan käyttää vi: tä?

Tiedän vähän * NIX-tekstieditorista (siirtymässä tällä hetkellä nano -kohdasta vim), ja kun olemme katsoneet hieman Unix & Linux SE -käyttöjärjestelmää, olemme huomanneet, että vi käytetään ”vim”: n sijaan melko monessa kysymyksessä. Tiedän, että ”vim” tarkoittaa ”Vi IMproved”, ja mietin tämän mielessä, miksi kukaan haluaisi mieluummin käyttää vi: tä kuin vim. Onko vi: llä mitään merkittävää etua vimiin nähden?

Muokkaa: Mielestäni kysymystä tulkitaan väärin. Tiedän, että vim on suurimmaksi osaksi huomattavasti tehokkaampi ja ominaisuuksien täydellinen kuin vi on. Haluan tietää, onko mahdollisissa tilanteissa, joissa vi: llä on etu vimiin nähden, kuten vähemmän muistin käyttöä, esiintyvyys * nix-järjestelmissä jne.

Kommentit

  • vi: n mukava asia on se, että voit odottaa sen olevan jokaisessa POSIX-yhteensopivassa järjestelmässä.
  • Itse asiassa Ubuntun vakioasennus sisältää vi eikä vim .. Ubuntu on yksi käyttäjäystävällisimmistä jakelu btw: stä 😉
  • @amyassin Tämä on virheellinen, Ubuntu, kuten useimmat Linux-jakelut, sisältää vim. vi on vain symbolinen linkki, joka viittaa lopulta oletusasennuksen vim -kohtaan.
  • Neuvoni on: Käytä Vim, mutta opi vi käyttämällä POSIX-määrityksiä vi . Tällä tavalla sinulla on kannettava tieto sekä Vim-laajennusten tunteminen.
  • @DDK Kaipaat ” lopulta ” lausunnossani. ” ls -l / etc / alternatives / vi ” – > ” lrwxrwxrwx 1 juurihakemisto 17. tammikuuta. 1 2016 / etc / alternatives / vi – > /usr/bin/vim.tiny”

vastaus

vi on (myös) POSIX-vakiomuokkain . Toteutuksia on paljon, ja vim on todennäköisesti suosituin.

Vaikka monet perinteiset Unix-yhteensopivat käyttöjärjestelmät tarjoavat vi Toteutukset ovat hyvin lähellä standardia, vim on lisännyt paljon lisäominaisuuksia, jotka tekevät siitä kaksiteräisen miekan.

Nämä laajennukset on tietysti suunniteltu yleensä muokkausprosessin helpottamiseksi ja hyödyllisten ominaisuuksien ja toimintojen tarjoamiseksi. Kuitenkin, kun olet tottunut joihinkin niistä (ei kosmeettisiin, kuten syntaksiväritys, vaan niihin, jotka muuttavat editorin käyttäytymistä), voit helposti unohtaa, että ne ovat erityisiä; ja käyttämällä toista toteutusta, mukaan lukien alkuperäiseen BSD: hen perustuvat koodi voi olla hyvin turhauttavaa. Myös päinvastoin.

Tämä on melko samanlainen kuin ongelma, joka tapahtuu skripteillä, jotka käyttävät muita kuin POSIX-basisteja, jotka kohtaavat enemmän ortodoksisia kuorintoteutuksia, kuten dash tai ksh.

Vastaa

Ei vi mitään merkittävää etua vimiin nähden pikemminkin päinvastoin. Vimillä on enemmän etuja kuin Vi. Saatat olla kiinnostunut: Miksi, oi MIKSI, tee nämä #? @! mutteripäät käyttävät vi: ä?

Edit lukee myös: Onko VIM: n oppiminen vaivan arvoista?

Kommentit

  • Jep. En käytä ’ en käytä IDE: tä, koska heidän muokkaamansa toimittajat pakottavat sinut käyttämään vain isn ’ t Vimiä.
  • @Keith Käytän sekä Xcodea että Eclipseä, ja ’ pystyn edelleen muokkaamaan vain vi: llä.
  • @Keith SlickEditillä on hyvä Vim-emulointi ja IDEA ’ s on lähellä sitä. Visual Studiossa on myös ViEmu.
  • IntellIJ: ssä on myös mukava vim-laajennus, joka ohittaa vakiomuokkaimen ’ käyttäytymisen.

Vastaus

Kun vietin suuren osan elämästäni (lapsuutta lukuun ottamatta) mukavasti muokkaamalla mukavasti Vimin kanssa, vietin noin kuukauden vain vi: n avulla. Tällöin tajusin, että olin ollut riippuvainen Vimistä kaikissa tekstin muokkaustarpeissani. Ennen matkaa vi: llä, kun minun täytyi korvata tekstiä tai suorittaa vastaava toimenpide suuressa tiedostoryhmässä, avasin vain tiedostot Vimissä ja suoritin komennon :bufdo , ja aina kun jouduin sisentämään tai muotoilemaan joitain tiedostoja, avasin ne Vimissä ja käytin Vim-komentoja ”s = ja gw -komennoilla Olin Vim-riippuvainen.Sen jälkeen kun tajusin, että vi: llä ei ollut näitä komentoja, pakotettiin suorittamaan joukkomuuntaisia tekstimuunnoksia sed -ohjelmalla ja opin paljon muista ohjelmista, kuten awk ja indent. Vaikka vaihdoin lopulta takaisin Vimin käyttöön, tieto, jonka sain käyttämällä vähemmän esillä olevaa editoria, oli huomattavaa ja osoittautunut erittäin hyödylliseksi. Sen lisäksi, että opin työkaluja tekstieditorin ulkopuolella, tutustuin paremmin myös vi: hen. Aina kun työskentelen uudella järjestelmällä tai palvelimella, jolla ei ole Vimiä, tunnen oloni paljon mukavammaksi käyttää vi: tä kuin ennen kuukausimatkaa.

Lisäksi viime kuussa asensin Linuxin halpa WM8650-tabletti ja havaitsi, että Vim: n ja vi: n välillä on huomattava suorituskykyero, joten käytän yleensä vi: tä tabletilla.

Kommentit

  • Huomaan, että tämä on yleinen asia IT: ssä – työkalut, jotka auttavat meitä, voivat myös peittää asioita, joista ’ voimme paremmin oppia.
  • Itse asiassa käsittely monien tiedostojen paikallista tiedostojen muokkausta ei voida ’ t tehdä kannettavasti Awk tai Sed joko kanssa. (-i kytke molemmat päälle on GNU-laajennus.) Mutta voit käyttää niitä kannettavasti esimerkiksi for f in *; do printf '%s\n' '%!sed -e '\''some sed command'\' x | ex "$f"; done

Vastaa

Minulla olisi vaikeuksia elää ilman vimiä, mutta en voi seistä vi . Entisen oppiminen antaa kuitenkin ainakin ajatuksen siitä, miten käsitellä myöhempää, kun se on kaikki käytettävissä.

Vim-käyttöliittymä on oletusarvoisesti melko lähellä vi: tä. ”Työskentelen järjestelmässä, jossa on vim. Ensimmäinen asia, jonka teen, on lisätä nämä jutut kansioon ~/.vimrc:

syntax enable set nocp set wildmenu 

Siellä ”on joukko muita mieluummin pidettäviä asioita – nytrap ja numerointi jne. – mutta ei haittaa.” Syntaksin käyttöönotto ”ottaa vain käyttöön syntaksin peruskorostuksen (hieman lihavampi: filetype plugin on on myös perus); ”nocp” sammuttaa vi-yhteensopivuuden , ja juuri tämä alkaa erottaa vim vanhasta vi (esim. , se mahdollistaa showmode -ominaisuuden, mikä tekee koko kokemuksesta jonkin verran inhimillisemmän, koska sinulla on nyt jonkinlainen vihje siitä, oletko komennossa vai ~ INSERT ~ -tilassa). vaakasuora valmistumisvalikko, kun teet joitain asioita, mikä myös helpottaa elämää.

Vim: n tekstinmuokkaus -ominaisuudet ovat vertaansa vailla – en muuta kuin emacs, en ole koskaan nähnyt tai kuullut lähellä olevasta ohjelmistosta. Niitä ei ole helppo oppia, mutta kun tunnet ne, ne ovat paljon nopeammin kuin hiiren valikot käytettävissä ja paljon dynaamisempia kuin hiiren valikkopohjaisten rajapintojen yksinkertaiset näppäinmakrovaihtoehdot. Ohjelmoinnissa käytän joskus vimeä IDE: n, kuten Eclipse, rinnalla, mutta teen suurimman osan työstä vimissä.

Jos valitset tämän polun, lol, etsi automaattisen täydennyksen ja taglist-laajennuksia. Ja varokaa pimeää puolta.

Kommentit

  • Lisän aina myös set mouse=a.
  • Ohjelmointiin liittyen kommentti, saatat löytää hurmaava mielenkiintoinen …
  • @ire_and_curses: haven ’ t kokeili sitä. Eclipse ja Vim seuraavat molemmat lähdetiedostoja ja sallivat niiden päivittämisen ulkoisesti, ja työpöydältä toiselle selaaminen siirtyy työpöydältä toiselle. Näyttää siltä, että ajatus on tho.
  • Vaikka en mielestäni ’ usko, että tämän vastauksen pitäisi olla valittu vastaus (koska se ’ s puolueellinen), se ’ on tarkalleen sellainen näkökulma, josta on hyötyä erojen ymmärtämisessä. Kiitos kannanotostasi.

Vastaus

Etu on, että vi yleensä esiasennettu yrityksen UNIX-järjestelmään, kuten AIX tai Solaris. Sen lisäksi, että vim ei ole käytettävissä asennusvälineillä.

Vastaa

Tämä on ote Vim Koans :

Master Wq ja Unix-isäntä

Vanha Unix-päällikkö tuli Master Wq: n joukkoon. ”Olen huolissani, Wq. Opetat Vimin tietä. vi on pyhä, mutta Vim ei; sen koodi levenee, sen piirteet ovat yleisön muistia; sen binäärit ovat valtavia, käyttäytyminen epäjohdonmukaista. Tämä ei ole Unixin tapa. Pelkään, että harhaan opiskelijasi. Mitä voidaan tehdä? ”

Master Wq nyökkäsi. ”Olet oikeassa”, hän sanoi. ”Vim on rikki. Korjaa se. Aloitetaanko? ”

Vanha Unix-päällikkö suostui ja avasi kuoren. Hän kirjoitti:

$ vi vim.c 

Hän alkoi koodata. Mestari Wq katseli jonkin aikaa ja kysyi sitten häneltä: ”Mitä vi-toteutusta käytät? Nvi? Vim? Elvis? ”

” En tiedä ”, sanoi Unix-päällikkö. ”Ei ole väliä.”

Mestari Wq nyökkäsi. Unix-päällikkö istui hetken hämmästyneenä ja sulki asiakirjansa tallentamattomana.

Kommentit

  • hahah … se on minulle hauskaa …. syvä mutta hauska.Kiitos jakamisesta.

vastaus

Kuten aiemmat vastaukset ovat jo maininneet, vi mukana melkein jokaisessa UNIX-järjestelmässä siellä.

Halusin vain lisätä esimerkin. Arch Linux on yksi erityisen suosittu ja kevyt jakelu, jota asentaja tai perusviat eivät ole mukana oletusarvoisesti, mutta molemmissa on vi.

Tämä ei ole etu vi sinänsä , koska voit yksinkertaisesti asentaa VIM: n manuaalisesti, ja asennuksessa on vähän tehtävää, joka vaatii tekstieditorin, eikä mitään, missä VIM on aiottua tarkoitusta parempi. on yleisempi ja kevyempi kuin vim, antaa sille joitain etuja.

Kukaan ei ole vielä yksiselitteisesti maininnut nimenomaisesti, että vi on suora edeltäjä vimille. Vim oli nimenomaan suunniteltu olemaan kaikki että vi oli ja enemmän.

Joten vim on hyvin suoralla tavalla parempi kuin vi, koska se on suunniteltu olevan .

Vastaa

Ainoa syy koskaan käyttää vi: tä yli vimiin on, kun sinulla ei ole muuta vaihtoehtoa.

Siihen on monia, monia syitä vim seisoo fo r ”vi parannettu”!

Lainan aiheeseen liittyvästä postauksesta, johon vastasin: –

  1. Useita ikkunoita – vaakasuora, pystysuora välilehdet.
  2. Visuaalinen korostus.
  3. Online-ohje: help -komennon avulla.
  4. Tallenna makrot rekisteriin, jonka voit sitten suorittaa.
  5. Kumoa (ja tee uudelleen) useita kertoja vanhan vi: n mielettömän kumouksen vaihtamisen sijaan.
  6. Komentorivihistoria, hakuhistoria.
  7. Koko kieli upotettuna yhdessä joukon käytettävissä olevat toiminnot, esim. getcwd ()
  8. Paljon laajennettu mallien vastaavuus.
  9. Sanan täydennys ctrl-P: n kautta & ctrl-N.
  10. Sisäänrakennettu tiedostojen navigaattori (hieman kömpelö, mutta voi olla hyödyllinen).
  11. ESC-avain todella sulkee komennot, joista yritit. kuten vi tekee.
  12. Kyky suorittaa komentoja kaikilla puskureilla, argeilla tai ikkunoilla bufdo, argdo & windon kautta.

Kommentit

  • Olet todennäköisesti voinut tuoda esiin ” monia, monia ” syitä, jotka mainitsit kohdassa unix.stackexchange.com/a/425597/85039 vastaa tähän. Se ’ tekee tästä vastauksesta hieman paremman; muuten se lukee enemmän kuin kommentti kuin todellinen vastaus
  • Otettu piste. Vastaus päivitetty, lainattu eilen tekemäni vastauksesta.

Vastaa

Olen huomannut, että vain valitse Vi VIM kun Kopioin ja liitän tekstidokumentin tai määritystiedoston, jota olen käyttänyt cat -komennolla. Tämä johtuu siitä, että kun yritän ctrl-c ja sitten ctrl-v VIM avattuun asiakirjaan, se pakottaa kaikki rivit kommentoimaan niiden edessä. Joten kun käytän Vi ctrl-v tai paste osaan Vi avattu asiakirja, se liittää juuri sen, mistä kopioin. Muuten käytän VIM koko päivän.

Nauti!

kommentit

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *