vim
macOS에는 두 가지 버전이 설치되어 있습니다.
- 기본 버전
/usr/bin/vim
,, - 및 MacVim(Homebrew를 통해)
/usr/local/bin/vim
, .
를 입력하면 vim
기본 프로그램이 호출됩니다. 를 입력할 때마다 MacVim을 사용하고 싶습니다 vim
. 방법을 아시나요? 모두 같은 ~/.vimrc
파일을 사용하나요?
답변1
별칭을 사용하세요.
별칭은 BASH RC 파일 중 하나(예: ~/.bashrc
아래)에 정의되어 있습니다. /usr/local/bin/vim
심볼릭 링크인 경우 이름이 별칭입니다 vim
.
if [ -h '/usr/local/bin/vim' ]; then
alias vim='/usr/local/bin/vim'
fi
다음과 같은 논리를 적용할 수 있습니다.
[ -h '/usr/local/bin/vim' ] && alias vim='/usr/local/bin/vim'
-h
파일이 Homebrew를 사용할 때 그럴 수 있는 심볼릭 링크인지 테스트합니다.-x
파일이 일반 실행 파일인지 테스트합니다.
ls -l
(파일 권한의 첫 글자가 l로 나타나면 해당 파일이 링크임을 알 수 있습니다.나rwxr-xr-x. )
프로그램이 기본 편집기를 호출하는 데 사용하는 일부 변수를 설정할 수도 있습니다.
EDITOR='/usr/local/bin/vim'
VISUAL='/usr/local/bin/vim'
source ~/.bashrc
셸의 RC 파일에 정의를 추가한 후 RC 파일을 가져와 새 별칭 이나 BASH 구성에 적합한 별칭을 선택하세요 . 이 명령은 command -v vim
별칭이 생성되었음을 표시하고 해당 출력은 다음과 같습니다.
alias vim=/usr/local/bin/vim
두 가지 버전 vim
.
바이너리 실행 파일이 아닌 심볼릭 링크를 가리키는 장점은 종종 그렇듯이 MacVim을 업그레이드할 때마다 별칭을 업데이트할 필요가 없다는 것입니다. brew update && brew upgrade
예를 들어 Execute를 사용하여 업그레이드하는 경우 Homebrew는 올바른 바이너리 실행 파일에 대한 심볼릭 링크를 유지합니다.
시스템 버전은 /usr/bin/vim
원래 위치에 남아 있어야 합니다. SIP(시스템 무결성 보호)를 비활성화하지 않으면 제거하거나 변경할 수 없습니다. 를 입력하여 시스템 버전을 사용할 수는 있지만 /usr/bin/vim
, vim
Invokes를 입력하면 됩니다 /usr/local/bin/vim
.
경로를 수정합니다.
Homebrew를 통해 설치된 모든 소프트웨어에 작동하는 또 다른 방법은 PATH
Homebrew에서 설치된 모든 소프트웨어 가 PATH
.zsh
cd
grep path .z*
결과 중 하나에 이 포함될 수 있습니다 fpath
. 이는 올바른 변수가 아닙니다. 이라는 소문자 변수를 찾고 있습니다 path
. 편집할 파일 이름( ~/.zshrc
또는 일 수 있음) 을 유추한 후 ~/.zprofile
변수 값을 변경합니다 path
. 예를 들어 아래에서는 및 먼저 홈 디렉터리의 스크립트나 프로그램을 path
정의 하고 마지막으로 시스템 정의 경로의 나머지 부분을 정의합니다./usr/local/bin
/usr/local/sbin
path=(
/usr/local/{bin,sbin}
$HOME/bin
$path
)
결과 Unix PATH
변수는 다음과 같이 정의됩니다.
/usr/local/bin:/usr/local/sbin:/Users/$username/bin:/usr/bin:/bin:/usr/sbin:/sbin
zsh
path
Unix 변수는 PATH
"함께 묶여" 있으므로 변수를 수정하는 파일만 편집 하면 typseset
됩니다 . 그런 다음 변수가 예상대로 수정되었는지 확인합니다 .source
path
source ~/.zprofile
PATH
echo $PATH
/usr/local/bin
Homebrew 패키지 관리자는 어떤 소프트웨어가 경로의 첫 번째(이전)에 있는 경우 macOS에서 문제를 일으키는 소프트웨어를 식별하는 데 매우 능숙합니다 /usr/bin
. 예를 들어 Homebrew가 GNU를 설치하려는 경우 id
소프트웨어 이름은 BSD 문제를 방지하는 /usr/local/bin
것입니다 .gid
id
/usr/bin
답변2
/usr/local/bin
Brew를 사용하는 표준은 이전 PATH
시스템 디렉터리를 이와 같이 배치하여 /usr/bin
이에 대한 명령을 먼저 가져오는 것입니다.