Cara terbaik untuk menjadikan vim MacVim (konsol, bukan mvim) sebagai default, bukan vim Mac OS X?

101

Saya menginstal MacVim menggunakan homebrew. ( brew install macvim). Jika saya menelepon mvimdari cmd, itu membuka GUI MacVim.

Saya ingin vimmenelepon Vim ( /Users/user/Applications/MacVim.app/Contents/MacOS/Vim) MacVim alih-alih /usr/bin/vimvim sistem ( ). Mana cara terbaik untuk melakukannya? Saya tahu saya bisa melakukan alias vim="/Users/user/Applications/MacVim.app/Contents/MacOS/Vim"tetapi saya tidak tahu apakah itu pendekatan terbaik ...

EDIT : Guys, terima kasih atas semua jawaban Anda, tetapi memang, karena saya sudah menggunakan homebrew, menggunakan --override-system-vimcara elegan untuk mencapai apa yang saya butuhkan.

Seseorang masih menggunakan Anda MS-DOS
sumber
Apa perbedaan antara konsol konsol MacVim dan vim biasa di Terminal?
hobbes3
2
@ hobbes3, vim yang dikirimkan dengan osx tidak memiliki dukungan ruby ​​atau python dikompilasi. ViM MacVim tidak. Yang diperlukan jika Anda ingin menggunakan plugin seperti Command-T
asgeo1
Vm yang disertakan dengan OS X juga tidak mendukung clipboard freakin '.
Thanatos

Jawaban:

136

Saya percaya ini yang Anda cari:

brew install macvim --with-override-system-vim

Ini akan membuat vim, vimdiff, dll. Symlinks ke mvim di / usr / local / bin / vim, dan selama / usr / local / bin adalah sebelum / usr / bin di PATH Anda, Anda akan mendapatkan hasil Anda ' sedang mencari.

Versi brew sebelumnya menggunakan switch --override-system-vimyang sudah usang.

kejadlen
sumber
3
Karena saya katakan saya sudah menggunakan homebrew, saya pikir ini memang pilihan terbaik: Saya tidak tahu opsi ini mungkin. Terima kasih!
Seseorang masih menggunakan Anda MS-DOS
2
Secara teknis, ini adalah permata tersembunyi dalam formula vim, bukan homebrew itu sendiri. :)
kejadlen
Saya bertanya-tanya, bagaimana jika saya membuat minuman menghapus macvim, akankah itu menghapus macvim dan meninggalkan vim asli? Atau itu juga akan hilang?
Seds
4
Ini tampaknya membutuhkan Xcode lengkap yang diinstal melalui app store (dan bukan hanya alat baris perintah).
ScoBe
3
Ini tidak lagi berfungsi, karena homebrew telah menghapus semua opsi rumus di masa mendatang. discourse.brew.sh/t/…
Fadecomic
20

Sakelar baris perintah Vi berfungsi.

alias vim='mvim -v'

William Bettridge-Radford
sumber
Jawaban terbaik di sini.
e_x_p
17

Anda dapat membuat alias di blog Anda ~/.bash_profile, cukup tambahkan baris ini ke file itu:

alias vim="/Users/user/Applications/MacVim.app/Contents/MacOS/Vim"
Wuffers
sumber
Sebenarnya, alias vim="/Users/user/Applications/MacVim.app/Contents/MacOS/Vim"karena saya ingin menautkan ke konsol vivo MacVim dan bukan versi gui.
Seseorang masih menggunakan Anda MS-DOS
Ahh, baiklah. Tetap!
Wuffers
Karena vim adalah aplikasi interaktif, melakukan alias yang mengesampingkan Vim Sistem tidak akan terlalu berbahaya, saya kira ...
Seseorang masih menggunakan Anda MS-DOS
1
Bagi saya ini ada di / Aplikasi. Alias ​​bagus!
user72923
4

brew install macvim --override-system-vimsudah ditinggalkan. Anda harus menggunakannya brew install macvim --with-override-system-vimsebagai gantinya.

Diego
sumber
Tidak lagi berfungsi.
YESUS
3

Untuk mengubah editor default sistem, tambahkan berikut ini ke .bash_profile Anda

export EDITOR=/usr/local/Cellar/macvim/<version>/bin/mvim 

Mengubah ini seharusnya memungkinkan Anda untuk menggunakan MacVim untuk editor default (bahkan untuk aplikasi yang menjalankan editor otomatis)

EDIT
Untuk penggunaan normal di terminal, Anda masih harus menggunakan 'mvim' untuk mengedit file. Jika Anda masih ingin mengetikkan 'vi' di terminal, saya sarankan menambahkan alias ke .bash_profile juga.

EDIT 2
Setelah melihat pengeditan OP, Anda bisa mengubah jalur vim MacVim ke jalur sistem. Catatan Saya tidak berpikir ini adalah cara terbaik karena dapat mempengaruhi panggilan sistem lain juga saat membuat panggilan di terminal. Jadi jika Anda benar-benar hanya ingin itu berubah ketika Anda mengetikkan 'vim' di baris perintah maka penggunaan alias saya percaya sebagai hal terbersih dan teraman untuk dilakukan.

PATH="/Users/user/Applications/MacVim.app/Contents/MacOS/Vim:${PATH}"
export PATH

Uji pengaturan Anda dengan menggunakan which vimdi terminal.

Adam Lewis
sumber
2
Saya tidak ingin menjadikan mvim sebagai default. Saya ingin memanggil vim ( /Users/user/Applications/MacVim.app/Contents/MacOS/Vim) MacVim ketika saya menuliskan vim pada terminal dan bukan vim sistem ( /usr/bin/vim).
Seseorang masih menggunakan Anda MS-DOS
@Seorang masih menggunakan Anda MS-DOS: Maaf tentang itu, salah mengerti maksud Anda (membuat sedikit lebih karena sekarang melihat suntingan Anda).
Adam Lewis
Hum, tapi Anda memberi saya ide: jika saya terhubung vimke /usr/local/bindan menggunakan $PATHpendekatan, mungkin berhasil.
Seseorang masih menggunakan Anda MS-DOS
@ Seseorang masih menggunakan Anda MS-DOS: Berhati-hatilah untuk menghubungkan ke direktori yang sudah memiliki vim di dalamnya ... Mungkin menjadi sulit untuk mengetahui mana vim yang akan Anda dapatkan.
Adam Lewis
1
:) Pikiranku melonjak ke kasus terburuk (lokal dihapus). Anda harus baik-baik saja dengan pengguna lokal.
Adam Lewis
2

Sunting: cukup instal homebrew (sepadan dengan kerumitan!) Dan brew install vim

Jawaban lama saya di bawah:


Saya tidak ingin menginstal xcode hanya untuk ini, juga saya tidak ingin menggunakan alias atau metode pembuatan (yang juga memerlukan xcode) jadi saya melakukan ini:

  1. Saya pertama kali mengunduh MacVim dari halaman rilis ,
  2. Lalu saya menginstal MacVim dengan menyeretnya ke folder Aplikasi saya,
  3. Untuk penggunaan terminal, ada juga aplikasi terminal di zip, bernama mvim, Saya menginstalnya dengan menjalankan perintah ini:

    sudo mv mvim / usr / local / bin / vim

  4. Dan kemudian, saya mengulangi lingkungan dengan hash -r(atau menutup dan membuka kembali terminal).

  5. Akhirnya, ketika saya menjalankan vimdari terminal saya, saya melihat yang diperbarui "di konsol".

Saya harap ini membantu seseorang.

Arda
sumber
Saya menggunakan homebrew untuk banyak hal. Ini sepadan dengan kerumitan. Memiliki XCode terinstal tetapi dapat menginstal semua yang saya butuhkan hanya dengan menelepon brew installitu hebat.
Seseorang masih menggunakan Anda MS-DOS
1

Dua sen saya, saya menjalankan ini setiap kali memutakhirkan python saya melalui homebrew.

brew reinstall vim --HEAD --with-cscope --with-lua --override-system-vim
brew reinstall macvim --HEAD --with-cscope --with-lua --override-system-vim
Alan Dong
sumber