vi
터미널에 뭔가를 입력 하면 다음과 같이 표시됩니다.
아직 다운로드하지 않았다고 확신하는 vim이 vi가 아니라 실제로는 vi가 vim이 아니라는 점에 유의하십시오. 예를 들어 화살표 키는 이동 대신 ABCD를 인쇄합니다.
답변1
비록 원작 vi
은아직 사용 가능, 현재 Linux 또는 BSD 배포판에서는 많이 사용되지 않는 것 같습니다. 1 분명히 10년 전에 좀처럼 사용되지 않은 후 2000년에 다시 도입되었으며 2005년에 마지막으로 출시되었습니다.
다양한구현하다vi 주위에, 이것은 실제로 지금입니다POSIX 사양. 여기에는 nvi
및 이 포함되지만 elvis
가장 인기 있는 것은 아마도 입니다 vim
.
vim을 사용하는 시스템에는 vi
소프트 링크만 있을 뿐이고, 이런 방식으로 호출하면 vi 호환 모드에서 시작되어야 하므로 시스템은 POSIX와 호환됩니다. 하지만 이로 인해 프로그램의 실제 이름인 vim(제목 화면에 표시되는 이름)은 변경되지 않습니다.
1. 그렇긴 하지만아치에서 사용 가능, 적어도. 다른 곳에서도 찾을 수 있습니다.
답변2
Debian을 사용하는 경우 vi
의 항목으로 인해 열려 있습니다. 내가 당신을 위해 그것을 분석하겠습니다.vim
vi
/etc/alternatives
이 작업을 수행할 때 ls -l /usr/bin/vi
:
lrwxrwxrwx 1 root root 20 Jul 1 2014 /usr/bin/vi -> /etc/alternatives/vi
보시다시피 vi
바이너리는 /etc/alternatives/vi
.
이제 이렇게 하면 ls -l /etc/alternatives/vi
:
lrwxrwxrwx 1 root root 18 Jul 1 2014 /etc/alternatives/vi -> /usr/bin/vim.basic
이는 바이너리 파일에 대한 심볼릭 링크입니다 vim.basic
.
간단히 말해서: /usr/bin/vi
→→/etc/alternatives/vi
/usr/bin/vim.basic
vi
따라서 shell을 입력하면 vim.basic
열립니다.
/etc/alternatives
명령을 통해 값을 검사하고 변경할 수 있지만 update-alternatives
원래 질문에 대한 답변은 이미 있는 것 같습니다.
답변3
많은 Linux 시스템에서 기본 버전은 vi
실제로 Vim 버전이며 일반적으로 Vim 패키지를 설치하여 얻을 수 있는 것보다 더 적은 옵션으로 컴파일된 버전입니다(내장된 Perl 및 Python 지원 없음, GUI 없음 등).
예를 들어 화살표 키는 이동하는 대신 ABCD를 인쇄합니다.
이는 터미널 에뮬레이터와 Vim에서 사용하는 terminfo/termcap 항목을 일관되지 않게 이해했기 때문에 발생합니다. 일반적으로 이는 Vim이 화살표 키를 "활성화"하는 코드를 전송했기 때문입니다(실제로 화살표 키를 대신 전송된 모드에 배치 t_ks
). 하지만 예상되는 키는 다른 모드(예: 위쪽 화살표)용입니다. TERM 환경 변수 또는 vim 옵션을 변경하거나(또는 작동할 수 있는 vimrc에서 색상을 비활성화할 수 있음) 다른 터미널을 사용하거나 최후의 수단으로 파일에 추가하여 이 모드 스위치를 비활성화해 보십시오. 이는 vim 도움말 파일에 제안된 솔루션입니다.<1b>OA
<1b>[A
t_ku=<1b>[A
set term=builtin_ansi
builtin_xterm
set t_ks= t_ke=
.vimrc
:help cs7-problem
이 행동은아니요어쨌든 이는 "실제로 vim이 아니라 vi"임을 의미합니다. vi 또는 nvi의 대부분의 최신 "정품" 버전은 화살표 키도 지원합니다.
답변4
여러 Debian 기반 배포판에서 /bin/vi의 심볼릭 링크는 vim이 아니라 "busybox"입니다. 어떤 경우에는 이것이 괜찮을 수도 있지만, busybox가 제공하는 기능은 최소한의 집합일 뿐이며 어떤 이유에서든 busybox가 컴파일되는 방식에 따라 달라지는 것 같습니다.
vim이 설치되어 있으면 일반적으로 busybox 링크를 대체하지만 때로는 그렇지 않습니다. busybox는 여전히 /bin/vi에 연결되고 vim은 /usr/bin/vi에 연결될 수 있으므로 첫 번째 발견된 PATH 환경 변수에 따라 다릅니다. . 일반 사용자는 "vim"을 얻을 수 있지만 "root"로 로그인하면 busybox vi를 얻을 수 있습니다.
어떤 vi 링크를 사용하고 있는지(어느 vi), 무엇에 연결되어 있는지 확인하고 확인하는 것이 좋습니다.