Sono abbastanza nuovo per OS X, ma ho familiarità con Vim per averlo utilizzato in vari sistemi * nix. Ho visto molte persone consigliare di eseguire MacVim su Vim nel terminale. Qualcuno può dirmi quali differenze ci sono tra MacVim e Vim normale?
Sono abbastanza nuovo per OS X, ma ho familiarità con Vim per averlo utilizzato in vari sistemi * nix. Ho visto molte persone consigliare di eseguire MacVim su Vim nel terminale. Qualcuno può dirmi quali differenze ci sono tra MacVim e Vim normale?
Risposte:
MacVim è solo Vim. Tutto ciò che sei abituato a fare in Vim funzionerà esattamente allo stesso modo in MacVim.
MacVim è più integrato nell'intero sistema operativo rispetto a Vim nel terminale o persino a GVim in Linux, segue molte delle convenzioni di Mac OS X.
Se lavori principalmente con app GUI ( YummyFTP + GitX + Charles , ad esempio) potresti preferire MacVim.
Se lavori principalmente con le app CLI (ssh + svn + tcpdump, ad esempio) potresti preferire vim nel terminale.
Entrare e lasciare un reame (CLI) per l'altro (GUI) e viceversa può essere "costoso".
Uso sia MacVim che Vim a seconda dell'attività e del contesto: se sono in CLI-land vim filename
digiterò solo e se sono in GUI-land invocherò semplicemente Quicksilver e avvierò MacVim.
Quando sono passato da TextMate mi è piaciuto il fatto che MacVim supportasse quasi tutte le scorciatoie regolari a cui gli utenti Mac sono abituati. Ne ho aggiunti alcuni miei, imitando TextMate ma, dato che lavoravo in più ambienti, ho costretto me stesso ad imparare in modo vim. Ora uso sia MacVim che Vim quasi esattamente allo stesso modo. Usare l'uno o l'altro è solo una questione di contesto per me.
Inoltre, come ha detto El Isra, il vim predefinito (CLI) in OS X è leggermente obsoleto. Puoi installare una versione aggiornata tramite MacPorts oppure puoi installare MacVim e aggiungere un alias al tuo .profile
:
alias vim='/path/to/MacVim.app/Contents/MacOS/Vim'
per avere lo stesso vim in MacVim e Terminal.app.
Un'altra differenza è che molti fantastici schemi di colori là fuori funzionano fuori dagli schemi in MacVim ma sembrano terribili nell'app Terminal.app che supporta solo 8 colori (+ evidenziazioni) ma puoi usare iTerm - che può essere impostato per supportare 256 colori - invece di Terminal.
Quindi ... fondamentalmente il mio consiglio è di usarli entrambi.
EDIT: non l'ho provato ma l'ultima versione di Terminal.app (in 10.7) dovrebbe supportare 256 colori. Sono ancora al lavoro su 10.6.x quindi userò ancora iTerm2 per un po '.
EDIT: Un modo ancora migliore per utilizzare l'eseguibile CLI di MacVim nella shell è spostare lo mvim
script in bundle con MacVim da qualche parte nel tuo $PATH
e utilizzare questo comando:
$ mvim -v
EDIT: Sì, Terminal.app ora supporta 256 colori. Quindi, se non hai bisogno delle funzionalità avanzate di iTerm2, puoi tranquillamente utilizzare l'emulatore di terminale predefinito.
brew install macvim
e sei pronto. mxcl.github.com/homebrew
sudo port install macvim
sudo
non è mai richiesto in homebrew.
L'unico motivo per cui è valsa la pena passare a MacVim: Yank usa gli appunti di sistema.
Finalmente posso copiare e incollare tra MacVim sul mio terminale e il resto delle mie applicazioni.
*
registro nel terminale VIM per trascinarlo negli appunti di sistema. Quale IMO è migliore perché personalmente non voglio sempre sincronizzarmi con gli appunti di sistema. Quindi in VIM, ad esempio, quando si strappa una riga, utilizzare "*yy
per copiare negli appunti.
+
, ad esempio se desideri copiare l'intero contenuto negli appunti:%y+
sfortunatamente, con "mvim -v", le finestre ALT più freccia non funzionano ancora. Non ho trovato alcun modo per abilitarlo :-(
mvim
comando, ho installato MacVim tramite HomeBrew ma non sapevo che ci fosse un comando simbolico predefinito. Grazie!
Riguarda le associazioni di tasti che si possono ottenere semplicemente dalle configurazioni .vimrc. Per quanto riguarda gli appunti, puoi usare :set clipboard unnamed
e l'estratto da vim andrà negli appunti di sistema. Ad ogni modo, qualunque cosa tu finisca per usare, ti suggerisco di usare questa configurazione di vimrc
, contiene un sacco di plugin e collegamenti che renderanno la tua esperienza fluida.