Fedora에서 Vi를 Vim으로 전역적으로 교체

Fedora에서 Vi를 Vim으로 전역적으로 교체

Debian 기반 시스템에서 대체 시스템은 실행 파일 vivim실행 파일을 모두 처리합니다. 따라서 vim를 설치하고 실행 하면 그것도 vi얻을 수 있습니다 vim. 저는 클래식을 정말 싫어하기 때문에 이것이 좋다고 생각합니다 vi.

Fedora 17 "Beefy Miracle"에서 대체 시스템은 분명히 이들 중 하나를 처리할 수 없습니다. 그러나 실행을 /etc/profile.d/vim.sh위해 쉘 별칭을 추가하는 구성 파일이 있습니다 . 어떤 이유로 시스템 사용자(루트 포함)에 대해서는 이 작업을 수행하지 않습니다.vivim

하지만 모든 사용자에 대해 수동으로 별칭을 설정하더라도 호출할 때 대신 sudo vi클래식을 시작합니다 . 이는 sudo가 셸을 시작하지 않거나 프로필이 대화형 셸 세션에서만 실행되기 때문일 수 있습니다.vivim

vi이제 시스템 업데이트 후에도 지속되는 심볼릭 링크를 생성하기 위해 클래식을 완전히 제거하는 방법을 찾고 있습니다 . Classic을 제거하는 방법은 있지만 Fedora 17에서는 제거 vi되지 않습니까 ? vim아니면 더 좋은 방법이 있나요?

고쳐 쓰다: 패키지에 포함되어 있는 yum provides vi것으로 확인되었습니다 . 하지만 단순히 삭제할 수는 없습니다. 해당 패키지가 포함된 패키지를 자동으로 삭제하기 때문입니다. 제거하고 다시 설치 하려고 해도 종속성으로 다시 설치됩니다.vivim-minimalsudosudovim-minimal

고쳐 쓰다: 요청 시 출력 rpm -qf /usr/bin/vi:

vim-minimal-7.3.444-1.fc17.x86_64

그리고 ls -l /usr/bin/vi:

-rwxr-xr-x. 1 root root 782248 13. Feb 2012  /usr/bin/vi

답변1

귀하 vi는 Vim이지만 as를 호출하여 vi기록 호환성 모드로 들어갑니다. 권장되는 조치는 vi 대신 Vim을 실행하려면 vim대신 실행하는 것입니다 vi. 하지만 viVim이 시스템의 모든 계정에서 항상 실행되도록 하려면 다음에서 이를 재정의하세요 /usr/local/bin.

cat >/usr/local/bin/vi <<\EOF
#!/bin/sh
exec /usr/bin/vim "$@"
EOF
chmod 755 /usr/local/bin/vi

답변2

# echo 'alias vi="vim"' >> /etc/bashrc' 또는# alternatives --install /usr/bin/vi vi /usr/bin/vim 900

답변3

참고로 최근 Fedora(적어도 18 이후)에는 이 별칭이 /etc/profile.d한 번만 설치되었습니다 vim-enchanced.

관련 정보