Bagaimana cara menggunakan Vim yang terinstal di Git Bash alih-alih yang disertakan dengan Git?

22

Saya telah menginstal C:\Program Files (x86)\(vim|git)masing - masing Vim dan Git .

Ketika saya menjalankan Vim dari Git Bash, ia menjalankan versi internal Vim yang menyertai pemasang Git. Apakah ada cara untuk menimpa perilaku ini yang tidak melibatkan perubahan saya .profileatau .bashrcsejenisnya sehingga saya bisa menjalankan versi Vim yang saya instal di Program Files?

Terima kasih.

matpie
sumber

Jawaban:

20

Secara default Git menjalankan vim dari Git\bin\vim. Ini sebenarnya adalah skrip yang berisi path ke executable itu sendiri:

#!/bin/sh
exec /share/vim/vim73/vim "$@"

Karena itu Anda dapat mengedit file ini untuk menunjuk ke lokasi Git Anda.

Editor default dapat ditimpa dalam Git\etc\gitconfig:

[core]
editor = path_to_your_editor
sudahlah
sumber
5
Jika seseorang datang ke sini setelah 2012-08-17, jalur ke gitconfigfile pada chocolatelyinstalasi git adalahc:\program files\git\ningw64\etc\gitconfig
THBBFT
3

Dengan asumsi bahwa mengubah konten C:\Program Files (x86)\{vim,git}adalah mungkin, Anda memiliki setidaknya dua opsi ini tergantung pada nilai %PATH%variabel lingkungan Anda :

  1. Jika ada C:\Program Files (x86)\vim\vim73di Anda, %PATH%Anda bisa menghapus vimbiner yang diinstal dengan Git. Agar ini berfungsi, Vim harus dijalankan sebagai vimdan bukan dengan jalur penuh.

  2. Anda mungkin memiliki Program Files (x86)direktori Anda pada volume NTFS, sehingga Anda dapat menghapus Vim yang dapat dieksekusi yang diinstal oleh Git dan membuat tautan simbolis ke Vim yang nyata yang dapat dieksekusi.

xaizek
sumber
2

Jika pemasangan Vim Anda tersedia di jalur, buka konsol Powershell dan jalankan ini:

git config --global core.editor "$(Get-Command vim | % { $_.Source -replace '\\','\\\\' })"

Ini akan mengatur editor git Anda ke Vim yang ada di jalur.

bingung
sumber
1
Itu akan bekerja di dalam Git. Saya sedang mencari opsi yang akan menggunakan versi Vim yang diinstal sistem dalam Git Bash. Jawaban yang diterima masih bekerja paling baik.
matpie
@sancancelot saya pikir, saya salah membaca pertanyaan Anda.
bazzilic