Vim at Emacs: Lahat ng Quiet Up Front

Kabilang sa mga banal na giyera Ang pinaka maalamat na alam namin ay ang giyera ng publisher. Vi / Vim laban sa Emacs. Partikular na masaya ito sapagkat pareho silang libreng software na may napakataas na kakayahan.

Bumabalik ito maraming taon. Ang Emacs ay binuo ni Richard Stallman noong 35s, na pinakawalan humigit-kumulang 1991 taon na ang nakararaan. Si Vi ay halos pareho ng edad, nilikha ni Bill Joy. Si Vim, sa kabilang banda, ay isang mas bago at lumabas mula sa pangangailangan para kay Bram Moolenar upang lumikha ng isang clone ng Vi para sa Amiga noong XNUMX.

Paanong retro! Ang mga publisher mula sa panahon ng bato, kung mas simple ang buhay. At patuloy naming ginagamit ang mga ito dahil nagbabago at umaangkop sa mga oras. Gumagamit ang Vim at Emacs ng mga modernong interface sa GTK, mayroon silang sariling mga wika ng extension, mga tagapamahala ng package; bukod sa iba pang mga bagay na inilagay ang mga ito sa mga editor moderno.

Para saan ginagamit ko ang mga ito?

Maglagay tayo ng isang ganap na pangyayaring pangyayari. Ang isang Gúgol ay isang salitang matematika na tumutukoy sa isang isa na sinusundan ng isang daang mga zero. Paano natin ito isusulat sa isang text editor?

Ang unang solusyon na naisip ay mag-type ng isa at pindutin ang 0 key hanggang sa itakda ako ng counter ng haligi sa 101, dahil dapat sukatin ng 101 character ang expression na ito. Ipinapalagay namin na ini-edit namin ito sa isang may kakayahang text editor, na mayroong status bar upang maipakita ang mga bagay na ito.

Ngayon, naiisip ko ang isang mas simpleng solusyon:

i1 ESC 100a0 ESC

Siyempre ang solusyon na ito ay nangangailangan ng Vim, o hindi bababa sa Vi. Siya utos ay medyo simple, at ito ay parang sinasabi namin kay Vim: Ang pagiging normal mode, insert 1 at bumalik sa normal na mode. Ipasok ngayon pagkatapos ng cursor ng daang beses 0 at bumalik sa normal na mode. Isasagawa ng Vim ang aming order nang walang tanong.

Pagiging kumplikado

Ang solusyon na ito ay parang sobrang kumplikado, at nakukuha ko ito. Una, dahil nakikipag-usap kami sa konsepto ng a editor ng modal. Ngunit may mga kaso kung saan ito ay mas kapaki-pakinabang kaysa sa tila.

Sabihin nating mayroon tayong listahan ng pamimili. Pupunta kami sa tindahan at nais naming isulat kung ano ang dadalhin namin. Tandaan na ito ay isang bagay na mapaghanda, walang dapat magdala ng kanilang computer sa tindahan upang pumunta para sa pagkain. Gayunpaman, ito ang aming listahan:

1 Saging 4 na mansanas 2 kilo ng asukal 1 Litrong tubig

Ito ay isang napaka-simpleng listahan ng pamimili. Ngunit magsasagawa kami ng ilang mga kaayusan. Una, sa palagay ko, ilang saging ay hindi masama. Dahil gusto namin ng mga estetika, babaguhin namin ang maliit na titik sa mga mansanas iwan siya bilang Saging at papalitan namin ang mga pangalan ng mga yunit ng kanilang mga pagpapaikli.

Kaya't magsimula tayo. Dahil nais namin ang isang backup ng aming orihinal na listahan, gumawa kami ng isang kopya kasama 4yy at i-paste namin ito sa ibaba ng p. Pindutin ang Ctrl-a ng maraming beses upang madagdagan ang bilang ng mga saging at lumipat sa dulo ng susunod na salita na may e. Bumaba kami sa pangalawang linya, ginagawa namin ang a Fm upang makapunta sa salitang mga mansanas at pindutin ang ~ (AltGr-4 sa aking keyboard) upang ang titik ay magbago sa malalaking bersyon nito. Gumagawa kami ng isang j upang bumaba sa susunod na linya at lilitaw kami sa k ng kilos sa b. Lumabas kami ng normal na mode sa pamamagitan ng pagta-type cw at pagsusulat ng salitang kapalit para sa kilo, na magiging kg. Pinindot namin ang ESC, bumalik sa normal mode at muli j upang gawin ang parehong sa Panitikan. Handa na Ito ang hitsura ng aming listahan ngayon.

3 Saging 4 Mansanas 2 kg ng asukal 1 L ng tubig

kapangyarihan

Ibuod natin ang nakaraang pagkilos dito:

4yy G p 2Ctrl-A e Fm ~ jb cw kg ESC jb cw L ESC

Iginalang ko ang ilang mga puwang upang gawin itong maunawaan, ngunit hindi ito karaniwang ginagawa. Ang pagkakasunud-sunod ng isang robot na ito ay nagpapaisip sa amin ng marami tungkol sa pagiging kapaki-pakinabang nito. Ngunit sigurado itong mas mabilis na gawin ito kaysa sa paglipat gamit ang mouse, piliin, kopyahin, i-paste, tanggalin at iba pa.

Ang mga editor na may isang mahabang kasaysayan tulad ng Vim o Emacs ay maaaring gumawa ng mga bagay tulad nito dahil nabuo sila sa loob ng maraming taon at may napakalinaw na mga ideya kung paano gawin ang mga bagay.

Mga kurba sa pag-aaral

Oo, matarik sila. Ngunit iyan ang para sa mga hakbangin tulad ng Cream, na nagbibigay ng isang kumpletong handa na gamitin na kapaligiran ng Vim palabas ng kahon nang hindi kinakailangang magpumiglas sa mga mode at bagay, at guru-mode, isang extension ng Emacs na - sa pagkakaalam ko - ay tumutulong sa mga nagsisimula.

Ang guru-mode ay bahagi ng Emacs Prelude, isang koleksyon ng mga extension ano ang ginagawang madali para sa iyo kung gusto mong matuto.

Mga Extension

Dahil ang mga ito ay mas kalat na mga editor kaysa sa maraming mga modernong editor at may kani-kanilang mga wika ng extension, mahahanap mo ang mga tema ng kulay, mga plugin at marami pa. Mayroong mga kagiliw-giliw na mga bagay doon:

Mukhang mas madali (o mas kaaya-aya) ang mga extension ng programa sa Emacs Lisp kaysa sa VimScript. Ibig kong sabihin, ito ay isang wikang umaandar na binibigyang kahulugan ng isang kernel na ginawa para doon, laban sa isang kinakailangang wika na ginawa upang i-configure at palawakin.

Konklusyon

Tingnan mo! Wala kang gastos, pareho ang libreng software na ipinamamahagi nang libre. Dapat ay nasa mga repository sila ng lahat ng mga pamamahagi na alam ng tao at maaaring matagpuan sa malefic proprietary system. Wala nang mahihiling pa.

At sa wakas, kung nagulat ka kung bakit inilalagay ko ang isang e bago ang Emacs sa pamagat sa halip na isang y, ito ay dahil mas mahusay ito sa akin. Isang bagay tulad ng / í-macs /. Nagawa kong i-save ang aking mga problema sa pagbaybay sa pamamagitan ng pagbabago ng posisyon, ngunit gusto ko talaga itong gawin ni Vim 😀


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.

  1.   Nabulok87 dijo

    Gumagamit lamang ako ng nano at mag-e-edit lamang ng ilang mga file na 0.0

    1.    anti dijo

      Karamihan ito ay isang pagtatalo para sa paggamit sa kanila. Nakikita ko na maraming mga tao ang ginusto na huwag subukan ang mga ito, at nagsimula akong magsulat ng isang bagay upang hikayatin sila. Ayan yun.

      (Alam kong mahina itong item)

      1.    Damian rivera dijo

        Hindi ito tamad, ang mga emac at vim ay mahusay na mga editor ng teksto, mas gusto ko sila (vim) sa halip na isang IDE

        Regards

        1.    anti dijo

          Salamat. Ngayon na naiisip ko ito, sa palagay ko ay hindi sinasadya akong nagbigay ng isang scoop. Ang 'pamamahagi' na binabanggit ko ay tila pinakawalan lamang ngayon.

    2.    KZKG ^ Gaara dijo

      ahahaha ganun din ang nangyayari sa akin, sa nano naiwan ako 😀

  2.   eolander dijo

    Ngayon, kailangan kong i-edit ang isang file sa pamamagitan ng telnet sa isang access-point na may dd-wrt at dapat kong tandaan ang vi.

  3.   msx dijo

    isa. " mayroong digmaang publisher. »
    MALI!
    Si Vim ay isang editor, ang Emacs ay ang handa nang gamitin na collar ng hadron sa iyong computer, alam mo!

    2. Ang paggamit ng Cream (ajjj) o anumang uri ng "helper" para sa Vim o Emacs ay kapareho ng pag-install ng Manjaro at pagpapanggap na na-install mo at ginagamit ang Arch - na may posibleng pag-iingat na ang isang helper ay hindi binabago ang kakanyahan ng Vim o Emacs at Manjaro ay Manjaro ngunit hindi Arch.

    Kung nais mo talagang ibato ito sa Emacs mayroong ilang mga cool na site:
    http://emacsrocks.com/
    http://www.masteringemacs.org/
    http://batsov.com/prelude/
    http://lisperati.com/casting.html

    1.    anti dijo

      Ang Emacs ay isang tagapagsalin ng Lisp na may mga idinagdag na tampok para sa pag-edit ng teksto.
      Ang cream ay maaaring maging kahit anong gusto mo, ngunit nariyan upang ang mga nagsisimula ay hindi direktang mag-crash sa pader ng modal edit.
      Ang Emacs ay medyo madali sa una, dahil oo, sumulat sa una

  4.   Annubis dijo

    [mode MATUTO]

    Ang Emacs, ang operating system na 35 taon na ang lumipas ay kulang pa rin ng isang mahusay na editor ng teksto 😛

  5.   xykyz dijo

    "Vim at Emacs". Ang "e" na iyon sa pamagat (at kung saan sa teksto) ay maling ginamit ...

    1.    xykyz dijo

      And by the way, gumagamit ako ng vim para sa lahat na. Sinimulan kong gamitin ito noong nakaraang taon at ngayon ito ay naging lubhang kailangan para sa akin. Mayroon ding kalamangan na ang vi ay paunang naka-install sa lahat (o hindi bababa sa halos lahat), na halos pareho sa paghawak, kaya't alam kung paano gamitin ito maaari mong i-edit ang mga file sa anumang pamamahagi, mayroon itong X11 o wala.

      Sinubukan ko ang Emacs, ngunit tila hindi komportable ang mga kumbinasyon ng keyboard kaya nakatuon ako kay Vim

    2.    anti dijo

      Ipinaliwanag na niya ito sa ilalim. Para sa akin kung ano ang dapat gamitin e dahil ang parirala ay parang / vim at i-macs /, na nagmamasid na ang y ay nagbabago sa e kapag ang susunod na salita ay nagsisimula sa tunog na i.
      Gayunpaman, ito ay mas matikas na ilagay ito paatras at maiwasan ang mga problema, ngunit ang isang maliit na eksperimento ay hindi makakasakit sa sinuman.

      1.    xykyz dijo

        Okay, hindi ko nabasa ang buong artikulo dahil sa kawalan ng oras haha.

        Ito pa rin ang maling pagbaybay, gayon pa man sa mas mahusay na tunog.

        1.    anti dijo

          Ayos lang Walang hihigit sa kakatwang bagay na ito upang punahin nang hindi natatapos ang pagbabasa.
          Inaasahan kong maaari mo akong patawarin sa kakulangan na ito. Mukhang sa pagsusuri ay naipasa rin nila ito, kaya dapat silang sumang-ayon sa akin, ngunit ang ilang sanggunian mula sa RAE para sa mga banyagang salita ay dapat suriin. Ang mga ito ay hindi naisasalin.

          1.    xykyz dijo

            Oo, hindi ko ito natapos, inaamin ko ang pagkakamali, ngunit wala akong oras kani-kanina lamang at hindi ako makakapag-paligid tulad ng gusto ko. Sa katunayan, ito ay lubhang kakaiba na sa huli ay maaaring narito ako para sa isang pares ng mga sandali ngayon.

            Tulad ng para sa mga banyagang salita, ang pang-ugnay na 'at' ay hindi isang banyagang salita, kahit na ang mga emac ay. Mula sa naintindihan ko (na wala rin akong oras upang mapatunayan ngayon) dapat basahin ng mga emac ang mga emac, gaano man natin ito basahin sa Ingles. Kung hindi man, magiging mahirap na ilapat ang mga patakaran ng pagbaybay, dahil kung nagsasalita ka ng Espanyol, hindi mo kailangang magsalita ng Ingles o Aleman, at samakatuwid hindi mo alam kung paano binibigkas ang mga salitang iyon sa mga wikang iyon.

            Gayunpaman, hindi ito isang pagpuna, isang komento lamang at sinasabi ko sa iyo mula ngayon na palagi kong gusto ang iyong mga artikulo 😉

        2.    anti dijo

          Salamat. Ang feedback at nakabubuo na pagpuna ay nagsisilbi sa ating lahat.

  6.   diazepam dijo

    Hindi ko nais na gamitin ang mga ito ngunit, sa isang kurso na Advanced Functional Programming, kailangan mong gumawa ng isang editor ng uri ng Vim, ngunit sa haskell.

  7.   Tyo100 dijo

    Mas gusto ko ang vi o vim dahil ito ang pinaka-unibersal dahil pareho itong gumagana sa anumang OS at lahat ng * nix isama ito at sa lahat ibig kong sabihin lahat ng mula sa GNU / Linux, HP-UX, Solaris, AIX, BSD hanggang sa pinaikling bersyon ng Linux bilang dd-wrt

  8.   Abimael martell dijo

    Nagprogram ako ng 100% kasama ang VIM (Ruby, PHP, Javascript, Coffescript, CSS, at higit pa)
    narito ang isang pamamahagi para sa mga programmer ng ruby, ito ay kumpleto at maraming mga kapaki-pakinabang na bagay, pagbati (https://github.com/carlhuda/janus)

    1.    Damian rivera dijo

      Ito ang sinasabi ko (sa itaas) Gumagamit ako ng vim para sa mono, java, perl, bash at python lamang na ang mga hindi nai-interpret na wika ay kailangang gumamit ng terminal upang makumpleto, sa FreeBSD ginagamit ko (at ginagamit) ang maraming VI na siyang editor katutubong ngunit i-install din ee at joe napakahusay (katulad ng nano), sa Gentoo ang magandang bagay ay nagdadala ito ng nano ngunit pinagsama ko ang vim at gusto ko ito ng marami! Ito ang pinakamahusay na editor mayroong at binago sa iyong mga pangangailangan ito ay isang perpektong tool para sa pangangasiwa ng system

      Regards

  9.   Matias (@ W4t145) dijo

    Vim Vim Vim!, Magpakailanman, gumagana ito para sa lahat at saanman, hindi ko ito binago

  10.   nano dijo

    Ahm, ewan ko, tinatamad ako at gumagamit ako ng Sublime xD

  11.   Daniel Rojas dijo

    Palagi akong gumagamit ng Vim, gustung-gusto ko ito at nakikita kong napaka praktikal at komportable 😀

  12.   dragnell dijo

    Simple lang, mahalaga sa araw-araw.

  13.   Guido rolon dijo

    vim RULES! ngunit «ed» ROCKS !!!!,

  14.   kalakasan dijo

    Ang vim orange ay nagsusulat ng maayos na vim cristal ay nagsusulat ng normal, vim, vim, vim ...

  15.   yoghurtwhite dijo

    Dapat mong malaman ang mga pagkakaiba sa pagitan ng "kasi", "bakit", "bakit" at "bakit". Lalaki, sa lahat ng teksto ay wala kang naibigay na solong isa.