Як я можу використовувати встановлений Vim у Git Bash замість того, який постачався разом із Git?


22

Я встановив Vim та Git C:\Program Files (x86)\(vim|git)відповідно.

Коли я запускаю Vim від Git Bash, він запускає внутрішню версію Vim, яка постачалася разом із інсталятором Git. Чи є спосіб змінити таку поведінку, яка не передбачає зміни мого .profileчи .bashrcподібного, щоб я міг запустити версію Vim, яку я встановив у файлах програми?

Спасибі.

Відповіді:


20

За замовчуванням Git запускає vim з Git\bin\vim. Це насправді скрипт, який містить шлях до самого виконуваного файлу:

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

Тому ви можете відредагувати цей файл, щоб вказати на ваше місцезнаходження Git.

Редактор за замовчуванням може бути замінений у Git\etc\gitconfig:

[core]
editor = path_to_your_editor

5
За випадкових випадків, що хтось приїде сюди після 2012-08-17, шлях до gitconfigфайлу при встановленні chocolatelygitc:\program files\git\ningw64\etc\gitconfig
THBBFT

3

Якщо припустити, що зміна вмісту C:\Program Files (x86)\{vim,git}можливо, у вас є принаймні ці два варіанти залежно від значення %PATH%змінної вашого середовища:

  1. Якщо у вас є C:\Program Files (x86)\vim\vim73у вашому %PATH%ви можете просто видалити vimбінарний файл , який був встановлений з Git. Для цього Vim повинен працювати як, vimа не повним шляхом.

  2. Напевно, у вашому Program Files (x86)каталозі є об'єм NTFS, тому ви можете видалити виконувану програму Vim, встановлену Git, та зробити символічне посилання на справжній виконуваний файл Vim.


2

Якщо ваша установка Vim доступна на шляху, відкрийте консоль Powershell та виконайте це:

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

Він встановить ваш редактор git на Vim, який знаходиться на шляху.


1
Це буде працювати в Git. Я шукав варіант, який використовуватиме встановлену системою версію Vim у Git Bash. Прийнята відповідь працює найкраще.
матір

@sirlancelot Я думаю, я неправильно прочитав ваше запитання.
bazzilic
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.