Vim i Emacs: sense novetat al front

Entre les guerres santes més llegendàries de les que tenim consciència està la guerra d'editors. Vaig veure / Vim contra Emacs. Aquesta és particularment divertida per que tots dos són programari lliure i amb capacitats molt altes.

Això es remunta a molts anys enrere. Emacs va ser desenvolupat per Richard Stallman en els setanta, alliberat aproximadament 35 anys enrere. Vaig veure té més o menys la mateixa edat, creat per Bill Joy. Vim per contra, és una mica més recent i sorgeix de la necessitat de Bram Moolenar de crear un clon d'Vaig veure per Amiga el 1991.

Quina retro! Editors de l'edat de pedra, quan la vida era més simple. I els seguim fent servir per que evolucionen i s'adapten als temps. Vim i Emacs usen modernes interfícies en GTK, tenen els seus propis llenguatges d'extensió, gestors de paquets; entre altres coses que els posen entre els editors moderns.

¿Per què els ús?

Anem a posar una circumstància completament hipotètica. Un googol és una paraula matemàtica que defineix a un u seguit de cent zeros. Com ho escrivim en un editor de text?

La primera solució que se m'ocorre és escriure un un i pressionar la tecla 0 fins que el comptador de columnes em posi en 101, per que 101 caràcters ha de mesurar aquesta expressió. Estem suposant que vam editar això en un editor de text competent, que disposi d'una barra d'estat per mostrar aquestes coses.

Ara, se m'acut una solució més simple:

i1 ESC 100a0 ESC

Per descomptat que aquesta solució requereix de Vim, o almenys de Vi. el Comando és bastant simple, i és com si li diguéssim a Vim: Estant en la manera normal, insereix 1 i torna a la manera normal. Ara insereix després de l'cursor cent vegades 0 i torna a la manera normal. Vim complirà la nostra ordre sense queixar-se.

complexitat

Aquesta solució sona extremadament complexa, i ho entenc. En primera per que estem tractant amb el concepte d'un editor modal. Però hi ha casos en què és molt més útil del que sembla.

Diguem que tinguem una llista de compres. Anem a anar a la botiga i volem escriure el que anem a portar. Recordem que és una cosa hipotètic, ningú hauria de portar el seu ordinador a la botiga per anar per menjar. Com sigui, aquesta és la nostra llista:

1 Plàtan 4 pomes 2 quilos de sucre 1 litre d'aigua

És una llista de compra molt senzilla. Però hi farem fa uns arranjaments. Primer, crec que uns plàtans més no estarien malament. Com ens agrada l'estètica, canviarem la minúscula en pomes per deixar-la com Plàtan i substituirem els noms de les unitats per les seves abreviatures.

Així que comencem. Com volem un suport de la nostra llista original, fem una còpia amb 4yy i l'enganxem a sota amb p. Pressionem un parell de vegades Ctrl-a per incrementar el nombre de plàtans i ens vam desplaçar a la fi de la següent paraula amb e. Vam baixar a la segona línia, fem una Fm per arribar a la paraula pomes i pressionem ~ (AltGr-4 en el meu teclat) perquè la lletra canviï a la seva versió majúscula. fem una j per baixar fins a la següent línia i apareixem a la k de quilos amb b. Sortim de la manera normal teclejant cw i escrivint la paraula de reemplaçament per quilos, que serà kg. Pressionem ESC, tornant a la manera normal i una altra vegada j per fer el mateix amb litre. Fet. Així es veu la nostra llista ara.

3 Plàtans 4 Pomes 2 kg de sucre 1 L d'aigua

el poder

Resumim l'acció anterior en això:

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

He respectat alguns espais per fer-ho comprensible, però normalment no es fa. Aquesta ordre pròpia d'un robot ens fa pensar molt en la seva utilitat. Però segur que és més ràpid fer això que moure't amb el ratolí, seleccionar, copiar, enganxar, esborrar i altres.

Els editors de tan llarga trajectòria com Vim o Emacs poden fer coses com aquestes per que han estat desenvolupats per anys i amb idees molt clares de com fer les coses.

Les corbes d'aprenentatge

Sí, són costeruts. Però per això estan iniciatives com Cream, que proporciona un entorn completament llest per a usar Vim des del principi sense haver de barallar-se amb les maneres i això, i guru-mode, una extensió de Emacs que -fins on sé- ajuda als principiants.

El guru-mode és part d'Emacs Prelude, una col·lecció d'extensions què te la posen fàcil si quires aprendre.

les extensions

Ja que són editors més estesos que molts editors moderns i disposen de llenguatges d'extensió propis, pots trobar temes de colors, plugins i altres. Coses tan interessants hi ha per aquí com:

Sembla que és més fàcil (o més plaent) programar extensions en Emacs Lisp que en VimScript. Dic, és un llenguatge funcional interpretat per un nucli fet per això, contra un llenguatge imperatiu fet per configurar i estendre.

Conclusió

Dóna'ls una mirada! No et costa res, tots dos són programari lliure distribuït gratuïtament. Han d'estar en els repositoris de totes les distribucions conegudes per l'ésser humà i fins i tot poden trobar a malèfics sistemes privatius. No hi ha molt més que demanar.

I finalment, si es van estranyar perquè vaig posar una i abans d'Emacs en el títol en comptes d'una i, és per que em sona millor. Una cosa així com / í-macs /. Vaig poder estalviar-me problemes ortogràfics canviant la posició, però m'agrada molt Vim per fer-li això 😀


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   Rots87 va dir

    jo només ocupo el nano i només per editar alguns fitxers 0.0

    1.    contra va dir

      Això és més que res una argumentació per usar-los. Veig que molta gent prefereix ni provar-los, i em vaig disposar a escriure alguna cosa perquè s'animin. Això és tot.

      (Ja sé que és un article fluixet)

      1.    Damià Rivera va dir

        Per res no és fluix, emacs i vim són grans editors de text, jo els prefereixo (vim) en comptes d'un IDE

        Salutacions

        1.    contra va dir

          Gràcies. Ara que ho penso una mica, crec que per accident vaig donar una primícia. La 'distribució' que esmento sembla que s'acaba de donar a conèixer avui.

    2.    KZKG ^ Gaara va dir

      ahahaha em passa igual, amb nano camino sobrat 😀

  2.   eolandre va dir

    Doncs fa poc necessiti editar un arxiu per telnet en un access-point amb dd-wrt i vaig recordar vaig veure.

  3.   MSX va dir

    1. » hi ha la guerra d'editors. »
    ERROR!
    Vim és un editor, Emacs és el colisionador d'hadrons llest per a usar en el teu ordinador, sapigueu !.

    2. Fer servir Cream (ajjj) o qualsevol tipus de «helper» per Vim o Emacs és el mateix que instal·lar Manjaro i pretendre que vas instal·lar i fas servir Arch - amb la possible excepció que un helper no canvia l'essència de Vim o Emacs i Manjaro és Manjaro però no és Arch.

    Si volen rockearla de debò amb Emacs hi ha alguns llocs interessants:
    http://emacsrocks.com/
    http://www.masteringemacs.org/
    http://batsov.com/prelude/
    http://lisperati.com/casting.html

    1.    contra va dir

      Emacs és un intèrpret de Lisp amb caraterístiques afegides per a l'edició de text.
      Cream pot ser el que vulguis, però està allà perquè els que iniciïn no s'estavellin directament contra el mur de l'edició modal.
      Emacs és una mica més fàcil a el principi, perquè sí que és escriu a la primera

  4.   Annubis va dir

    [Mode falmewar ON]

    Emacs, aquest sistema operatiu que 35 anys després encara pateix d'un bon editor de textos 😛

  5.   Xykyz va dir

    «Vim i Emacs». Aquesta «i» de l'títol (i en algun lloc de el text) està malament utilitzar amb l ...

    1.    Xykyz va dir

      I per cert, jo faig servir vim per a tot ja. Vaig començar a usar-lo l'any passat i ara s'ha tornat indispensable per a mi. A més té l'avantatge que en totes (o al menys gairebé totes) ve preinstal·lat vaig veure, que és gairebé igual en el maneig, de manera que sabent fer-lo servir pots editar arxius en qualsevol distribució, tingui X11 o no.

      Emacs ho he provat, però em semblaven combinacions de teclat poc còmodes així que em vaig centrar en Vim

    2.    contra va dir

      Ja ho explicava fins a baix. Per a mi que s'hauria d'usar e per que la frase sona com / Vim i í-macs /, Atenint-nos a que la i canvia per e quan la següent paraula comença amb el so de i.
      Com sigui, era molt més elegant posar-ho a l'inrevés i evitar problemes, però una mica d'experimentació no li fa mal a ningú.

      1.    Xykyz va dir

        D'acord, no vaig arribar a llegir l'article sencer per falta de temps jaja.

        De tota manera, segueix sent una falta ortogràfica, per molt que soni millor.

        1.    contra va dir

          Aquesta bé. Res més que aquesta rar això de criticar sense acabar-se la lectura.
          Espero que puguin excusar aquesta manca. Sembla que en la revisió la van passar també, així que han d'estar d'acord amb mi, però caldria revisar alguna referència de la RAE per a les paraules estrangeres. Aquestes no són traduïbles.

          1.    Xykyz va dir

            Sí, no el vaig acabar, admeto l'error, però no tinc temps últimament i no puc estar per aquí tant com m'agradaria. De fet és summament estrany que a la fi hagi pogut estar un parell d'estones per aquí avui.

            Pel que fa a això de les paraules estrangeres, la conjunció "i" no és una paraula estrangera per molt que emacs si. Segons el que tinc entès (el que tampoc tinc temps de corroborar ara) emacs es hauria de llegir emacs, per molt que ho llegim en anglès. Sinó seria difícil aplicar les regles de l'ortografia, ja que si parles castellà no tens perquè parlar anglès o alemany, i per tant no tens perquè saber com es pronuncien aquestes paraules en aquests idiomes.

            De totes maneres no era una crítica només un comentari i et dic des de ja que els teus articles sempre m'agraden 😉

        2.    contra va dir

          Gràcies. Els comentaris i la crítica constructiva ens serveixen a tots.

  6.   diazepan va dir

    No m'agrada usar-los però, en un curs de Programació Funcional Avançada, calia fer un editor tipus Vim, però en haskell.

  7.   Tyo100 va dir

    Jo prefereixo vaig veure o vim per ser el mes universal ja que en qualsevol SO funciona igual i tots els * nix l'inclouen i per tots em refereixo a tots des de GNU / Linux, HP-UX, Solaris, AIX, BSD fins a versions retallades de Linux com dd-wrt.

  8.   Abimael Martell va dir

    jo programo 100% amb VIM (Ruby, PHP, Javascript, coffeescript, CSS, i mes)
    aquí aquesta una distribució per als programadors ruby, és molt completa i té moltes coses útils, salutacions (https://github.com/carlhuda/janus)

    1.    Damià Rivera va dir

      És el que dic (a dalt) jo faig servir vim per mico, java, perl, bash i python només que els llenguatges no interpretats hem de fer l'ús de la terminal per compilar, en FreeBSD usi (i ús) molt VI que és l'editor natiu però també instal ee i joe molt bo (semblants a nano), en Gentoo el bo és que porta nano però ja compili vim i m'agrada molt! és el millor editor que hi ha i modificat a les necessitats d'un és una perfecta eina per a l'administració de sistema

      Salutacions

  9.   Matias (@ W4t145) va dir

    Vim vim vim !, per sempre, serveix per a tot i en qualsevol lloc, no el canvi mai

  10.   nano va dir

    Ahm, no, jo sóc fluix i ús Sublim xD

  11.   Daniel Rojas va dir

    Jo ús sempre Vim, m'encanta i em sembla molt pràctic i còmode 😀

  12.   Dragnell va dir

    Simplement vim, indispensable en el meu dia a dia.

  13.   Guido Rolon va dir

    vim RULES! però «ed» ROCKS !!!!,

  14.   empenta va dir

    Vim taronja escriu fi vim vidre escriu normal, vim, vim, vim ...

  15.   iogurblanc va dir

    Hauries aprendre les diferències entre «perquè», «per què», «perquè» i «per què». Mascle, en tot el text no has donat ni un.