Tra i guerre sante Il più leggendario di cui siamo a conoscenza è la guerra degli editori. Vi / Vim contro Emacs. Questo è particolarmente divertente perché sono entrambi software gratuiti con capacità molto elevate.
Questo risale a molti anni fa. Emacs è stato sviluppato da Richard Stallman negli anni '35, rilasciato circa 1991 anni fa. Vi ha più o meno la stessa età, creato da Bill Joy. Vim, d'altra parte, è qualcosa di più recente e nasce dalla necessità per Bram Moolenar di creare un clone di Vi per Amiga nel XNUMX.
Quanto retrò! Editori dell'età della pietra, quando la vita era più semplice. E continuiamo a usarli perché si evolvono e si adattano ai tempi. Vim ed Emacs usano interfacce moderne in GTK, hanno i propri linguaggi di estensione, gestori di pacchetti; tra l'altro che li ha messi tra gli editori Moderno.
Per cosa li uso?
Mettiamo una circostanza del tutto ipotetica. Un Gúgol è una parola matematica che definisce uno seguito da cento zeri. Come lo scriviamo in un editor di testo?
La prima soluzione che mi viene in mente è digitare uno e premere il tasto 0 finché il contatore della colonna non mi imposta a 101, perché 101 caratteri dovrebbero misurare questa espressione. Supponiamo di modificarlo in un editor di testo competente, che ha una barra di stato per visualizzare queste cose.
Ora posso pensare a una soluzione più semplice:
i1ESC 100a0ESC
Ovviamente questa soluzione richiede Vim, o almeno Vi. Lui comando è abbastanza semplice, ed è come se dicessimo a Vim: Essendo in modalità normale, inserisci 1 e torna alla modalità normale. Ora inserisci cento volte dopo il cursore 0 e torna alla modalità normale. Vim eseguirà il nostro ordine senza domande.
Complessità
Questa soluzione sembra estremamente complessa e la capisco. Primo, perché abbiamo a che fare con il concetto di a editor modale. Ma ci sono casi in cui è molto più utile di quanto sembri.
Diciamo che abbiamo una lista della spesa. Andremo al negozio e vogliamo scrivere cosa porteremo. Ricorda che è qualcosa di ipotetico, nessuno dovrebbe portare il proprio computer al negozio per andare a mangiare. Comunque, questa è la nostra lista:
1 banana 4 mele 2 chili di zucchero 1 litro d'acqua
È una lista della spesa molto semplice. Ma faremo degli accordi. In primo luogo, penso che qualche banana in più non sarebbe male. Dato che ci piace l'estetica, cambieremo il minuscolo in mele per lasciarla come banana e sostituiremo i nomi delle unità con le loro abbreviazioni.
Quindi iniziamo. Dato che vogliamo un backup del nostro elenco originale, ne facciamo una copia con 4yy e lo incolliamo di seguito con p. Premi Ctrl-un paio di volte per aumentare il numero di banane e passare alla fine della parola successiva con e. Scendiamo alla seconda riga, facciamo a Fm per arrivare alla parola mele e premere ~ (AltGr-4 sulla mia tastiera) in modo che la lettera cambi nella sua versione maiuscola. Facciamo un file j per scendere alla riga successiva e compariamo nella k di chili con b. Usciamo dalla modalità normale digitando cw e scrivendo la parola sostitutiva per chili, che sarà kg. Premiamo ESC, tornando alla modalità normale e di nuovo j fare lo stesso con Litro. Pronto. Ecco come appare la nostra lista ora.
3 Banane 4 Mele 2 kg di zucchero 1 L di acqua
potere
Riassumiamo l'azione di cui sopra in questo:
4yy G p 2Ctrl-A e Fm ~ jb cw kg ESC jb cw L ESC
Ho rispettato alcuni spazi per renderlo comprensibile, ma di solito non viene fatto. Questo ordine di un robot ci fa riflettere molto sulla sua utilità. Ma sicuramente è più veloce farlo che spostarsi con il mouse, selezionare, copiare, incollare, eliminare e così via.
Gli editor finché Vim o Emacs possono fare cose del genere perché sono stati sviluppati per anni e con idee molto chiare su come fare le cose.
Curve di apprendimento
Sì, sono ripidi. Ma questo è ciò a cui servono iniziative come Cream, che fornisce un ambiente Vim completamente pronto all'uso senza dover lottare con modalità e cose, e la modalità guru, un'estensione di Emacs che, per quanto ne so, aiuta i principianti.
La modalità guru fa parte di Emacs Prelude, una raccolta di estensioni cosa ti rende facile se vuoi imparare.
Estensioni
Poiché sono editor più diffusi di molti editor moderni e dispongono di linguaggi di estensione propri, è possibile trovare temi colore, plug-in e altro ancora. Ci sono cose così interessanti là fuori come:
- Un organizzatore personale (Emacs)
- Un wiki all'interno dell'editor (vim)
- Modi per farti terapia, caffè y twittare/scavare (Emacs)
- E anche a piena distribuzione per rendere la vita più facile ai programmatori (Vim)
Sembra che sia più facile (o più piacevole) programmare estensioni in Emacs Lisp che in VimScript. Voglio dire, è un linguaggio funzionale interpretato da un kernel fatto apposta, contro un linguaggio imperativo fatto per configurare ed estendere.
Conclusione
Guarda! Non ti costa nulla, entrambi sono software gratuiti distribuiti gratuitamente. Devono essere negli archivi di tutte le distribuzioni conosciute dall'uomo e possono essere trovati anche in sistemi proprietari malefici. Non c'è molto altro da chiedere.
E infine, se sei rimasto sorpreso dal motivo per cui ho messo una e prima di Emacs nel titolo invece di una y, è perché a me suona meglio. Qualcosa come / í-macs /. Sono stato in grado di risparmiarmi problemi di ortografia cambiando la posizione, ma mi piace molto che Vim lo faccia 😀
Uso solo il nano e solo per modificare alcuni file 0.0
Questo è principalmente un argomento per usarli. Vedo che molte persone preferiscono non provarli e ho iniziato a scrivere qualcosa per incoraggiarli. Questo è tutto.
(So che è un oggetto debole)
Non è affatto pigro, emacs e vim sono ottimi editor di testo, li preferisco (vim) invece di un IDE
saluti
Grazie. Ora che ci penso, penso di aver accidentalmente dato uno scoop. La "distribuzione" di cui parlo sembra sia stata appena pubblicata oggi.
ahahaha a me succede lo stesso, con nano sono rimasto 😀
Recentemente ho dovuto modificare un file tramite telnet in un punto di accesso con dd-wrt e ho dovuto ricordare vi.
1. " c'è la guerra degli editori. »
ERRORE!
Vim è un editor, Emacs è il collisore di adroni pronto per l'uso sul tuo computer, sai!
2. Usare Cream (ajjj) o qualsiasi tipo di "aiuto" per Vim o Emacs equivale a installare Manjaro e fingere di aver installato e utilizzare Arch - con la possibile avvertenza che un aiutante non cambia l'essenza di Vim o Emacs e Manjaro è Manjaro ma non Arch.
Se vuoi davvero divertirti con Emacs, ci sono alcuni siti interessanti:
http://emacsrocks.com/
http://www.masteringemacs.org/
http://batsov.com/prelude/
http://lisperati.com/casting.html
Emacs è un interprete Lisp con funzionalità aggiuntive per la modifica del testo.
La crema può essere quello che vuoi, ma è lì in modo che gli antipasti non si schiantino direttamente contro il muro della modifica modale.
Emacs è un po 'più facile all'inizio, perché si, scrivi al primo
[modalità falmewar ON]
Emacs, quel sistema operativo che 35 anni dopo manca ancora di un buon editor di testo 😛
"Vim ed Emacs". Quella "e" nel titolo (e da qualche parte nel testo) è usata impropriamente ...
E a proposito, uso già vim per tutto. Ho iniziato a usarlo l'anno scorso e ora è diventato indispensabile per me. Ha anche il vantaggio che vi è preinstallato in tutti (o almeno quasi), il che è quasi lo stesso nella gestione, quindi sapendo come usarlo puoi modificare i file in qualsiasi distribuzione, che abbia X11 o meno.
Ho provato Emacs, ma mi sembravano scomode combinazioni di tasti, quindi mi sono concentrato su Vim
Lo ha già spiegato fino in fondo. Per me cosa dovrebbe essere usato e perché la frase suona come / vim e i-macs /, osservando che la y cambia in e quando la parola successiva inizia con il suono i.
Tuttavia, era molto più elegante metterlo al contrario ed evitare problemi, ma un po 'di sperimentazione non fa male a nessuno.
Ok, non sono riuscito a leggere l'intero articolo per mancanza di tempo ahah.
Comunque è ancora un errore di ortografia, per quanto suoni meglio.
Va bene. Nient'altro che questa strana cosa da criticare senza finire la lettura.
Spero che tu possa scusarmi per questa mancanza. Sembra che nella recensione lo abbiano anche superato, quindi devono essere d'accordo con me, ma va rivisto qualche riferimento della RAE per parole straniere. Questi non sono traducibili.
Sì, non l'ho finito, ammetto l'errore, ma ultimamente non ho tempo e non posso essere in giro quanto vorrei. In effetti, è estremamente strano che alla fine io sia potuto essere qui per un paio di momenti oggi.
Per quanto riguarda le parole straniere, la congiunzione 'e' non è una parola straniera, anche se emacs lo è. Da quello che ho capito (che ora non ho nemmeno il tempo di verificare) emacs dovrebbe leggere emacs, non importa quanto lo leggiamo in inglese. Altrimenti sarebbe difficile applicare le regole di ortografia, perché se parli spagnolo non devi parlare inglese o tedesco, e quindi non devi sapere come vengono pronunciate quelle parole in quelle lingue.
Comunque non era una critica, solo un commento e ti dico da ora che i tuoi articoli mi piacciono sempre 😉
Grazie. Feedback e critiche costruttive servono a tutti noi.
Non mi piace usarli ma, in un corso di Advanced Functional Programming, dovevi creare un editor di tipo Vim, ma in haskell.
Preferisco vi o vim perché è il più universale poiché funziona allo stesso modo in qualsiasi sistema operativo e tutti * nix lo includono e con tutto ciò intendo tutti, da GNU / Linux, HP-UX, Solaris, AIX, BSD alle versioni abbreviate di Linux come dd-wrt.
Programma al 100% con VIM (Ruby, PHP, Javascript, Coffescript, CSS e altro)
ecco una distribuzione per programmatori ruby, è molto completa e ha molte cose utili, saluti (https://github.com/carlhuda/janus)
È quello che dico (sopra) uso vim per mono, java, perl, bash e python solo che i linguaggi non interpretati devono usare il terminale per compilare, in FreeBSD uso (e uso) molti VI che è l'editor nativo ma installa anche ee e joe molto buono (simile a nano), in Gentoo la cosa buona è che porta nano ma ho già compilato vim e mi piace molto! È il miglior editor che ci sia e modificato in base alle tue esigenze è uno strumento perfetto per l'amministrazione del sistema
saluti
Vim Vim Vim!, Per sempre, funziona per tutto e ovunque, non lo cambio mai
Ahm, non lo so, sono pigro e utilizzo Sublime xD
Uso sempre Vim, lo adoro e lo trovo molto pratico e comodo 😀
Semplicemente vim, essenziale nella mia giornata.
vim REGOLE! ma «ed» ROCKS !!!!,
Vim orange scrive bene vim cristal scrive normale, vim, vim, vim ...
Dovresti imparare le differenze tra "perché", "perché", "perché" e "perché". Maschio, in tutto il testo non ne hai dato nemmeno uno.