vi, nvi 및 vim의 관계는 무엇입니까? 유닉스에서는 언젠가라는 명령을 찾았습니다

어떤 유닉스에서는 언젠가라는 명령을 찾았습니다 nvi. 기능이 많지 않은 생생한 편집기였습니다. 어쩌면 오래된 포크 였을 vi까요?

어쨌든, 어떤 vi버전이 다른 버전의 포크 이고 어떤 버전이 독립적 인 개발입니까? 유닉스와 비슷한 “가계도”가 있습니까?



답변

보낸 사람 nvi(1):

HISTORY
    The ex editor first appeared in 1BSD.  The nex/nvi replacements for the
    ex/vi editor first appeared in 4.4BSD.

메모리의 일부 배경이므로 세부 정보가 정확하기를 바랍니다.

처음에는 UNIX가 무료였습니다. 모든 사람은 Ken에게 사본을 요청할 수 있으며, 원본과 함께 테이프를 보낼 것입니다 (예 : “love, Ken”이라는 텍스트). “자유 소프트웨어”또는 “오픈 소스”라는 용어는 아직 존재하지 않았지만 모든 의도와 목적을 위해 “오픈 소스”였습니다.

그 이유는 UNIX가 Bell labs에서 개발 되었기 때문입니다. 벨 랩은 당시 전화 통신에 대한 독점권을 가진 AT & T의 일부입니다. 미국 정부와의 계약의 일환으로 AT & T는
다른 사업 분야 (예 : 컴퓨터)에 출입 할 수 없다는 데 동의했습니다 .

이 과정에서 어딘가에, UNIX는 독점 소프트웨어가되었습니다. 결과적으로 BSD (UNIX에서 유래) 독점 소프트웨어가되었습니다. viBSD의 일부로 작성되었으므로 독점적이었습니다.

이것이 80 년대 후반에서 90 년대 초반에 stevie(나중의 기초 vim)와 같은 일부 “vi 클론”이 등장한 이유입니다 nvi.

90 년대 초, 사람들은 자유 BSD 시스템을 원했기 때문에 nvi4.4BSD-lite (AT & T 코드에 의해 방해받지 않는 의미)를 위해 만들어졌으며, encumbered nvi를위한 “bug-for-bug compatible”대체물로 만들어졌습니다 vi. 여기에는 모든 vi기능이 있지만 고급 기능은 없습니다 vim.

FreeBSD & NetBSD는 모두 4.4BSD-Lite (그리고 OpenBSD & DragonflyBSD는 각각 NetBSD와 FreeBSD에서 내려옴)에서 내려 오므 nvi로 기본적 으로
설치되어 제공됩니다.

Linux와 달리 BSD 시스템에는 단일 “기본”시스템이 포함 nvi되어 있으므로 실제로 4+ 이상의 버전이 nvi있습니다. 그러나 실제로는 BSD 프로젝트가 코드를 교환하여 존재하지 않는 변경 사항이 적으므로 대부분의 버그 수정 및 개선 사항이 공유됩니다 (그러나 모두는 아님). 예를 들어 FreeBSD는 몇 년 전에 멀티 바이트 지원을 추가했다고 생각합니다.

vim이야기는 더 지루 : 브람은, 아미에서 실행되는 실행 싶었다 vi, 그러나 찾을 수 없습니다 vi아미을 위해. 그래서 그는 stevie코드 를 가져와 Amiga로 포팅 한 후 계속해서 개선했습니다. 이것이 오늘날에도 문서에서 많은 Amiga 관련 메모를 찾을 수있는 이유입니다.

한편, UNIX는 다시 한 번 “무료”이므로 originalvi 을 실행할 수 있습니다
.


답변

vi 클론의 가계도의 뿌리는 다음과 같습니다.

  • 1977 : Bill Joy의 원래 소스 인 “전통적인 vi”는 2002 년부터 포팅되어 무료로 사용할 수 있습니다.
  • 1985 : microEmacs, 그와 비슷한 “바이올”개발
  • 1987 년 : stevie, vim 및 xvi 개발
  • 1990 : 엘비스 (Navi)
  • 2000 : busybox의 “작은 vi”