Vi 대 vim, 아니면 내가 vi를 사용하고 싶은 이유가 있습니까?

* NIX 텍스트 편집기에 대해 조금 알고 있습니다 (현재 nano에서 ), Unix & Linux SE를 살펴본 후 vi가 사용되는 것을 확인했습니다. 많은 질문에서 “vim”대신. 나는 “vim”이 “Vi IMproved”의 약자라는 것을 알고 있으며,이를 염두에두고 왜 누군가가 vim 대신 vi를 사용하는 것인지 궁금합니다. vi가 vim보다 큰 이점이 있습니까?

편집 : 제 질문이 잘못 해석되고 있다고 생각합니다. 저는 vim이 vi보다 훨씬 더 강력하고 기능이 완벽하다는 것을 알고 있습니다. 제가 알고 싶은 것은 메모리 사용 감소, * nix 시스템에서의 보급률 등과 같이 vi가 vim보다 유리한 경우가 있는지 여부입니다.

댓글

  • vi의 좋은 점은 모든 POSIX 호환 시스템에있을 것으로 기대할 수 있다는 것입니다.
  • 사실 Ubuntu 표준 설치에는 vim가 아닌 div id = “7ac0a49198”>

.. Ubuntu는 가장 사용자 친화적 인 배포판 중 하나입니다. btw;-)

  • @amyassin 대부분의 Linux 배포판과 마찬가지로 Ubuntu에는 vim가 포함되어 있습니다. vi는 결국 기본 설치에서 vim를 가리키는 심볼릭 링크입니다.
  • 내 조언은 다음과 같습니다. Vim이지만 vi 에 대한 POSIX 사양을 사용하여 vi를 학습합니다. 그렇게하면 휴대용 지식과 Vim 확장 프로그램을 알 수 있습니다.
  • @DDK ” 결국 . ” ls -l / etc / alternatives / vi “-> ” lrwxrwxrwx 1 루트 루트 1 월 17 일 1 2016 년 / etc / alternatives / vi-> /usr/bin/vim.tiny”
  • 답변

    vi는 (또한) 입니다. POSIX 표준 편집기 . 많은 구현이 있으며 vim가 가장 많이 사용됩니다.

    많은 기존 Unix 호환 OS가 vi를 제공하지만 표준에 매우 근접한 구현, vim는이를 양날의 검으로 만드는 많은 추가 기능을 추가했습니다.

    물론 이러한 확장은 일반적으로 설계되었습니다. 편집 프로세스를 용이하게하고 유용한 기능을 제공합니다. 그러나 일단 그들 중 일부에 익숙해지면 (구문 색상과 같은 외형적인 것이 아니라 편집기의 동작을 변경하는 것) 쉽게 잊을 수 있습니다. 원래 BSD를 기반으로하는 것을 포함하여 다른 구현을 사용하는 것입니다. 코드는 매우 실망 스러울 수 있습니다. 그 반대도 마찬가지입니다.

    이것은 dash 또는 ksh.

    답변

    아니요 vim에 비해 큰 이점이 있습니다. Vim은 Vi보다 더 많은 장점이 있습니다. 관심이있을 수 있습니다. 왜, 왜, #? @! nutheads는 vi를 사용합니까?

    Edit also read : VIM을 배우는 것이 그만한 가치가 있습니까?

    댓글

    • 예. IDE를 사용하지 않습니다. ‘ IDE에서 사용하도록 강요하는 편집기가 Vim이 아니기 때문에 ‘
    • @Keith 저는 Xcode와 Eclipse를 모두 사용하고 ‘ 여전히 vi로만 편집 할 수 있습니다.
    • @Keith SlickEdit에는 훌륭한 Vim 에뮬레이션과 IDEA가 있습니다. ‘가 다가오고 있습니다. 또한 Visual Studio에는 ViEmu가 있습니다.
    • IntellIJ에는 표준 편집기 ‘의 동작을 재정의하는 멋진 vim 플러그인도 있습니다.

    답변

    Vim으로 편하게 편집하면서 (어린 시절을 제외하고) 인생의 많은 부분을 보낸 후, vi를 사용하는 데 한 달 정도를 보냈습니다. 그렇게하면서 필자는 모든 텍스트 수정 요구 사항을 Vim에 의존하고 있다는 것을 깨달았습니다. vi로 여행하기 전에 텍스트를 대체하거나 많은 파일 그룹에서 유사한 작업을 수행해야 할 때마다 Vim에서 파일을 열고 :bufdo 명령을 실행했습니다. , 일부 파일을 들여 쓰거나 형식을 지정해야 할 때마다 Vim에서 파일을 열고 Vim의 =gw 명령을 사용했습니다. 나는 Vim에 의존했습니다.vi에 이러한 명령이 없다는 것을 깨달은 후에는 sed로 대량 텍스트 변환을 수행해야했고 awkindent. 결국 Vim을 사용하도록 다시 전환했지만 기능이 덜한 편집기를 사용하여 얻은 지식은 상당했고 매우 유용하다는 것이 입증되었습니다. 텍스트 편집기 외부의 도구에 대해 배우는 것 외에도 vi에 대해 더 잘 알게되었습니다. 새로운 시스템이나 Vim이없는 서버에서 작업 할 때마다 한 달 간의 여행 이전보다 vi를 사용하는 것이 훨씬 편해졌습니다.

    또한 지난달에 Linux를 설치했습니다. 저렴한 WM8650 태블릿이고 Vim과 vi 사이에 눈에 띄는 성능 차이가 있다는 것을 알게되어 태블릿에서 vi를 사용하는 경향이 있습니다.

    댓글

    • 이것이 IT에서 흔히 발생하는 문제입니다. 우리가 배우는 데 도움이되는 도구를 사용하면 ‘ 학습하는 것이 더 나을 수도 있습니다.
    • 실제로는 처리합니다. 많은 파일에 대한 내부 파일 편집은 ‘ Awk 또는 Sed 둘 다 로 이식 할 수 없습니다. (-i 스위치는 GNU 확장입니다.) 그러나 for f in *; do printf '%s\n' '%!sed -e '\''some sed command'\' x | ex "$f"; done

    Answer

    Vim 없이는 살기가 힘들지만 vi를 견딜 수 없습니다 . 그러나 전자를 배우면 최소한 나중에 다룰 수있는 방법에 대한 아이디어가 떠오를 것입니다.

    기본적으로 vim 인터페이스는 실제로 vi에 매우 가깝습니다. “vim을 사용하여 시스템에서 작업 중입니다. 가장 먼저 ~/.vimrc에 다음 항목을 추가합니다.

    syntax enable set nocp set wildmenu 

    “지금 랩 및 번호 매기기 등 내가 선호하는 다른 항목이 많이 있지만 신경 쓰지 마십시오.”구문 활성화 “는 기본 구문 강조 표시를 설정합니다 (다소 더 강화 : filetype plugin on는 “nocp” vi 호환성을 해제합니다. 이것이 바로 vim을 예전 vi와 구별하기 시작하는 것입니다 (예 : , showmode를 사용하면 명령 모드인지 ~ INSERT ~ 모드인지에 대한 단서가 있으므로 전체 경험을 다소 인간적으로 만들어줍니다. “wildmenu”는 어떤 일을 할 때 수평 완성 메뉴가있어서 삶도 더 쉬워집니다.

    vim의 텍스트 편집 기능은 타의 추종을 불허합니다. emacs 외에는 가까이 다가오는 소프트웨어를 본 적이 없습니다. 배우기 쉽지는 않지만 일단 알게되면 마우스 메뉴보다 훨씬 더 빠르고 마우스 메뉴 기반 인터페이스의 간단한 키 매크로 대안보다 훨씬 더 역동적입니다. 프로그래밍을 위해 때때로 Eclipse와 같은 IDE와 함께 vim을 사용하지만 대부분의 작업은 vim에서 수행합니다.

    그 길을 택한다면 자동 완성 및 태그 목록 플러그인을 살펴보십시오. 그리고 어두운면을 조심하십시오.

    댓글

    • 저는 항상 set mouse=a도 추가합니다.
    • 프로그래밍과 관련하여 댓글을 달면 eclim 이 흥미로울 수 있습니다 …
    • @ire_and_curses : haven ‘ t 시도했습니다. Eclipse와 vim은 모두 소스 파일을 모니터링하여 외부에서 업데이트 할 수 있도록합니다. 한 데스크톱에서 다른 데스크톱으로 전환하는 것은 한 데스크톱에서 다른 데스크톱으로 전환하는 것입니다. 꽤 아이디어가있는 것 같습니다.
    • 하지만 ‘이 답변이 선택되어야한다고 생각하지는 않지만 ‘ s biased), ‘는 차이점을 이해하는 데 도움이되는 관점 유형입니다. 자리를 잡아 주셔서 감사합니다.

    답변

    이점은 vi가 일반적으로 AIX와 같은 엔터프라이즈 UNIX에 사전 설치되어 있다는 것입니다. 솔라리스. 게다가 vim은 설치 미디어에서 액세스 할 수 없습니다.

    답변

    Vim Koans :

    Master Wq 및 Unix 마스터

    오래된 Unix 마스터가 Master Wq에 왔습니다. “저는 고민입니다, Wq. 당신은 Vim의 길을 가르칩니다. vi는 거룩하지만 Vim은 그렇지 않습니다. 코드가 무분별하게 늘어나고 기능은 메모리를 많이 사용합니다. 바이너리는 방대하고 동작이 일치하지 않습니다. 이것은 Unix의 방식이 아닙니다. 학생들을 오도하는 것이 두렵습니다. 무엇을 할 수 있습니까?”

    주인 Wq가 고개를 끄덕였습니다. “당신이 옳습니다.”그가 말했다. “Vim이 고장났습니다. 수정하겠습니다. 시작할까요?”

    이전 Unix 마스터가 동의하고 셸을 열었습니다. 그는 다음과 같이 입력했습니다.

    $ vi vim.c 

    그는 코딩을 시작했습니다. 마스터 Wq는 잠시 시청 한 다음 그에게 물었습니다.“어떤 vi 구현을 사용하고 있습니까? Nvi? 정력? Elvis?”

    “모르겠습니다.”유닉스 마스터가 말했다. “중요하지 않습니다.”

    마스터 Wq가 고개를 끄덕였습니다. Unix 마스터는 잠시 깜짝 놀란 채로 문서를 저장하지 않고 닫았습니다.

    댓글

    • 하하 … 그것은 나에게 재밌습니다 …. 깊지 만 재미 있습니다.공유해 주셔서 감사합니다.

    답변

    이전 답변에서 이미 언급했듯이 vi는 거의 모든 UNIX 시스템과 함께 제공됩니다.

    예제를 추가하고 싶었습니다. Arch Linux는 특히 인기 있고 가벼운 배포판 중 하나이며 설치 프로그램이나 기본 배포판 모두 기본적으로 vim과 함께 제공되지 않지만 둘 다 vi와 함께 제공됩니다.

    이것은 vi 자체 , 단순히 수동으로 vim을 설치할 수 있고 텍스트 편집기가 필요한 설치에서 수행해야 할 작업이 거의 없으며 의도 한 목적을 위해 vim이 vi보다 우수한 곳은 없습니다. 그러나 차이점과 그 vi를 이해하십시오. vim이 틈새 이점을 제공하는 것보다 더 편재하고 가볍습니다.

    또한 포괄적 인 측면에서 vi가 vim의 직접적인 전조라고 명시 적으로 언급 한 사람은 없습니다. Vim은 특별히 모든 것이되도록 설계되었습니다. vi는 그 이상입니다.

    따라서 vim은 그렇게 설계 되었기 때문에 매우 직접적인 방식으로 vi보다 우수합니다.

    답변

    vim보다 vi를 사용하는 유일한 이유는 다른 선택의 여지가 없을 때입니다.

    그 이유는 아주 많습니다. vim은 fo를 의미합니다. r “vi 개선됨”!

    관련 게시물에서 빌린 답변 :-

    1. 여러 창-가로, 세로 & 탭.
    2. 시각적 강조 표시.
    3. : help 명령을 통한 온라인 도움말
    4. 매크로를 레지스터에 기록한 다음 실행할 수 있습니다.
    5. 오래된 vi의 미친 실행 취소 토글이 아닌 여러 번 실행 취소 (및 다시 실행)합니다.
    6. 명령 줄 기록, 검색 기록
    7. 사용 가능한 함수, 예 : getcwd ()
    8. 확장 된 패턴 일치
    9. ctrl-P를 통한 단어 완성 & ctrl-N.
    10. 내장 파일 탐색기 (조금 복잡하지만 유용 할 수 있음).
    11. ESC 키는 실제로 명령을 실행하는 대신 (미친) 탈출하려고했던 명령을 종료합니다. vi와 마찬가지로
    12. bufdo, argdo & windo를 통해 모든 버퍼, args 또는 창에서 명령을 실행할 수 있습니다.

    댓글

    • unix.stackexchange.com/a/425597/85039 여기에 대답하십시오. 그러면 ‘이 답변이 조금 더 나아집니다. 그렇지 않으면 실제 답변보다 댓글처럼 읽습니다.
    • 점수. 어제 작성한 관련 답변에서 차용 한 답변이 업데이트되었습니다.

    답변

    VIM보다 Vi를 선택합니다. cat 명령을 사용한 텍스트 문서 또는 구성 파일을 복사하여 붙여 넣습니다. 그 이유는 ctrl-c 다음 ctrl-vVIM 열린 문서로 시도 할 때 모든 줄 앞에 주석이 있어야합니다. 따라서 Vi를 사용하여 ctrl-v 또는 paste를 문서를 열면 복사 한 내용을 그대로 붙여 넣습니다. 그 외에는 하루 종일 VIM를 사용합니다.

    즐겨보세요!

    댓글

    답글 남기기

    이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다