logo

Ubuntu에 VIM 편집기를 설치하는 방법은 무엇입니까?

소개

Vim은 텍스트 편집기이자 Vi 편집기의 향상된 버전입니다. CLI(Command Line Interface) 및 GUI(Graphical User Interface) 애플리케이션으로 사용하도록 설계되었습니다.

Bram Moolenaar가 설계 및 개발했으며 1991년 11월에 처음 출시되었습니다. VIM은 오픈 소스 및 무료 화면 기반 텍스트 편집기입니다. 크로스 플랫폼 확장으로 인해 Amiga용으로 출시된 이후 여러 다른 시스템에도 적용되었습니다. 2018년 Linux Journal 독자들이 선정한 가장 유명한 편집자로 선정되었습니다. 개발자 설문 조사, 즉 Stack Overflow에서는 2015년에 3번째로 유명한 텍스트 편집기, 2019년에는 5번째로 가장 유명한 개발 환경으로 나타났습니다.

이 튜토리얼에서는 Ubuntu 운영 체제에 VIM 편집기를 설치합니다. 설치하려면 Ubuntu 버전과 작동하는 터미널이 업데이트되었는지 확인하세요.

전제 조건

  • 우분투
  • 단말기

VIM의 간략한 역사

VIM의 전신인 Stevie는 1987년 Tim Thompson이 Atari ST용으로 제작했으며 G.R. 월터와 토니 앤드류스. Bram Moolenaar는 1988년 Stevie의 Amiga 시스템 구현과 1991년 최초 공개 릴리스를 기반으로 VIM 작업을 시작했습니다.

제목 '왜' 짧았다 '바이 이미테이션' 초기 출시 당시에는 다음과 같이 수정되었습니다. '우리는 발전했다' 1993년에.

VIM 라이선스

VIM은 Vim 라이센스에 따라 게시됩니다. 여기에는 애플리케이션을 좋아하는 사용자가 어린이 기부를 고려하도록 영감을 주는 몇 가지 자선 프로그램 조항이 포함되어 있습니다. Vim 라이센스는 GNU GPL 2.0 이상 버전에서 변경된 사본의 배포를 허용하는 고유 조항에 따라 GNU General Public License와 적합합니다.

VIM의 인터페이스

VIM의 인터페이스는 아이콘이나 메뉴가 아니라 VI와 같은 텍스트 사용자 인터페이스 내에 제공되는 명령을 기반으로 합니다. GUI 모드인 gVim에는 일반적으로 사용되는 명령에 대한 도구 모음과 메뉴가 포함되어 있습니다. 그러나 전체 기능은 여전히 ​​명령줄 모드로 표시됩니다. Vi는 타이피스트가 홈 행에 손가락을 놓을 수 있도록 허용하는 경향이 있는데, 이는 터치 타이피스트에게 도움이 될 수 있습니다.

VIM 편집기에는 기본적으로 Vim과 함께 설치되는 vimtutor라고 하는 초보자를 위한 내장 튜토리얼이 포함되어 있습니다. 그러나 이는 다른 실행 파일이며 쉘 명령을 사용하여 실행될 수 있습니다. Vim 사용자 매뉴얼은 Vim의 기능을 자세히 설명하며 온라인에서 찾거나 Vim 내부에서 실행할 수 있습니다.

테스트 및 테스트 유형

또한 Vim에는 사용자가 기능과 명령을 묻고 탐색할 수 있는 도움말 기능이 내장되어 있습니다.

레지스터

Vim은 레지스터라고 알려진 몇 가지 고유한 메모리 항목을 제공합니다(프로세서나 하드웨어 레지스터와 혼동하지 마세요). 텍스트를 복사, 붙여넣기, 삭제 또는 잘라내기할 때 사용자는 조작된 텍스트를 레지스터 내에 저장하도록 선택할 수 있습니다. 숫자 및 문자와 관련된 36개의 범용 레지스터와 고유한 값(마지막 명령, 현재 파일 이름 등)을 포함하거나 고유한 목적을 제공하는 다양한 고유 레지스터를 사용할 수 있습니다.

모드

Vim은 vi와 같은 두 가지 이상의 편집 모드를 지원합니다. 유형 문자는 모드에 따라 명령 시퀀스로 지정되거나 텍스트로 입력됩니다. Vim에서는 12가지 편집 모드, 6가지 변형, 6가지 일반 모드를 사용할 수 있습니다.

    일반 모드:이 모드는 편집기 명령에 활용됩니다. 일반적으로 기본 모드이며 ESC 버튼을 누르면 현재 편집기가 기본적으로 이 모드로 돌아갑니다.삽입 모드:이 모드는 최신 편집기와 동일한 방식으로 텍스트를 입력하는 데 활용됩니다. 버퍼에서 열린 텍스트는 이 모드에서 키보드로 삽입된 텍스트로 변경될 수 있습니다.시각적 모드:이 모드는 텍스트 영역을 선택하는 데 사용됩니다. 외부 또는 내장 명령을 사용하여 필터링, 편집, 이동 등 선택한 영역에서 명령을 실행할 수 있습니다.
      시각적 블록별:하나 또는 여러 줄 주위의 직사각형 텍스트 블록을 선택하는 시각적 모드 하위 유형입니다.시각적 선별:하나 또는 여러 개의 전체 줄을 선택하는 또 다른 하위 유형입니다.
    모드 선택:이 모드는 시각적 모드와 동일하지만 명령이 해석되지 않습니다. 오히려 강조 표시된 텍스트는 키보드를 통한 입력으로 직접 대체됩니다. 이는 Microsoft Windows 플랫폼의 편집기에서 사용되는 선택 모드와 동일합니다.명령줄 또는 명령줄 모드:Vim 창 하단에서 한 줄 입력을 제공합니다. 특정 작업(예: 필터 명령 및 패턴 검색)에 대한 명령 및 기타 몇 가지 키가 이 모드를 트리거합니다. Vim 편집기는 명령이 완료되면 이전 모드로 돌아갑니다.Ex 모드:이 모드는 명령 시퀀스를 받아들입니다.

VIM 커스터마이징

Vim은 확장성과 사용자 정의가 가능하므로 텍스트 편집 플랫폼에 대해 더 큰 유연성과 제어 기능을 요구하는 고객에게 흥미로운 도구입니다. 텍스트 입력은 키보드 효율성을 향상시키기 위해 개발된 다양한 기능을 통해 제공됩니다. 고객은 다음을 사용하여 하드 명령을 실행할 수 있습니다. '키 매핑' , 확장 및 사용자 정의가 가능합니다. 그만큼 '녹음' 측면에서는 키 입력 시퀀스를 활성화하고 사용자 정의 또는 내부 매핑 및 기능을 호출하는 매크로 설정을 허용합니다.

키 매핑이나 매크로와 마찬가지로 약어는 짧은 텍스트 문자열을 더 긴 텍스트 문자열로 확장하고 실수를 수정하는 데에도 사용할 수 있습니다. 또한 Vim은 텍스트 편집에 대한 더 쉬운 솔루션을 찾는 고객을 위해 '쉬운' 모드를 지원합니다.

Java에서 int를 문자열로 변환

Vim의 새로운 기능을 향상하고 포함하는 여러 플러그인을 사용할 수 있습니다. 일반적으로 이러한 플러그인은 내부 스크립팅 언어 Vim, vimscript(VimL이라고도 함)로 작성되지만 다른 언어로 지정할 수도 있습니다.

많은 프로젝트가 복잡한 사용자 정의와 스크립트를 그룹화하고 Vim을 특정 작업을 위한 리소스로 전환하거나 Vim의 특성에 더 큰 특징을 포함시키는 데 중점을 두었습니다. 몇 가지 예로는 Unix 계열 시스템 사용자를 위한 편안한 아웃라이너를 제공하는 VimOutliner와 Vim을 클릭하여 입력하는 편집기처럼 작동할 수 있게 해주는 Cream이 있습니다.

Vim의 개선 사항 및 기능

Vim에는 vi와의 호환 모드가 포함되어 있지만 이 모드를 사용하지 않을 경우 Vim에는 vi에 비해 몇 가지 향상된 기능이 포함되어 있습니다. 그러나 Vim은 POSIX에 지정된 vi와 호환 모드의 단일 Unix 사양에 완전히 적합하지 않습니다. Vim 개발자는 Vim에 매우 적합하다고 말했습니다.

  • Vim의 몇 가지 향상된 기능에는 완성 기능, 파일 병합 및 비교(vimdiff라고 함), 향상된 정규식, 포괄적으로 개발된 도움말 시스템, 플러그인 지원을 포함한 스크립트 언어, 그래픽 사용자 인터페이스(gvim이라고 함), 마우스 상호 작용(및 없음)이 포함됩니다. GUI 사용), 접기, 맞춤법 검사, tar, zip, bzip2 및 gzip 파일의 보관 및 압축 파일 편집과 HTTP, FTP 및 SSH와 같은 네트워크 프로토콜을 통한 형식, 탭 및 분할과 같은 제한된 개발 환경 창, 세션 상태 보존, 유니코드 및 다중 언어 지원, 커서 및 검색 위치 기록, 구문 강조, 세션 전환 명령, 시각적 모드, 편집 세션을 계속할 수 있는 분기 및 다중 레벨 다시 실행/실행 취소 기록.
  • Vim은 실행 중에 '.swp' 확장자를 사용하여 사용자 변경 사항을 스왑 파일에 저장합니다.
  • 이 파일은 장애 후 복원에 활용될 수 있습니다. Vim은 사용자가 파일을 열려고 기존 파일과 바꾸려고 하면 경고를 표시하며, 사용자가 계속하면 Vim은 '.swo' 확장자를 사용하는 스왑 파일을 활용합니다.
  • 기능을 비활성화할 수 있습니다.

Vim 스크립트

VimL 또는 Vimscript라고도 합니다. Vim 스크립트는 Vim에 통합된 스크립팅 언어입니다. 초기 Vim 버전에는 실제 vi 편집기의 이전 기반 편집기 언어인 기능 정의 및 제어 흐름에 대한 명령이 추가되었습니다. 7 버전부터 Vim 스크립트는 사전 및 목록을 포함하여 더욱 발전된 데이터 유형과 더 쉬운 객체 지향 프로그래밍 모드를 지원합니다. filter() 및 map()을 포함한 많은 내장 함수는 공통 함수형 프로그래밍 형식을 허용하며 Vim 스크립트에는 8.0 버전부터 람다가 포함되어 있습니다. 대부분 Vim 스크립트는 명령형 프로그래밍 형식으로 지정됩니다.

Vim 매크로는 일반 모드 명령 시퀀스를 포함할 수 있지만 더 어려운 작업을 위해 Vim 스크립트에 지정된 ex-functions 또는 명령을 요청할 수도 있습니다. Vim 기능의 대부분의 확장(플러그인 또는 스크립트로 알려짐)은 Vim 스크립트에 지정되어 있지만 플러그인은 Racket, Tcl, Ruby, Lua, Python 또는 Perl과 같은 다른 언어도 사용할 수 있습니다. 이러한 플러그인은 수동으로 설치하거나 Vim-Plug, Pathogen 또는 Vundle과 같은 플러그인 관리자를 통해 설치할 수 있습니다.

Vim 스크립트의 파일은 다른 코드와 마찬가지로 일반 텍스트로 저장되며 일반적으로 .vim은 파일 이름의 확장자입니다. 한 가지 중요한 예외는 Vim의 구성 파일(예: .vimrc)입니다.

Vim의 가용성

vi 편집기는 원래 Unix OS에서 사용할 수 있었지만 Vim은 Atari MiNT, AmigaOS, DOS, BeOS, Windows NT 3.1에서 시작되는 Windows, MorphOS, OS/390, OS/2, OpenVMS, RISC OS, QNX, BSD, 클래식 Mac OS 및 Linux. Vim은 Apple macOS에서도 포팅되었습니다. Vim 독립적인 포트는 iOS 및 Android에서 사용할 수 있습니다.

빔 포크

Neovim은 Vim의 유지 관리성과 확장성을 개발하는 것을 목표로 하는 Vim 포크입니다. 내장된 언어 서버 프로토콜 지원, 비동기 I/O 지원, luaJIT 언어 인터프리터를 통한 Lua 스크립팅 지원을 포함하여 이 포크의 여러 기능을 사용할 수 있습니다. 이는 오픈 소스 소프트웨어 프로젝트이며 해당 소스 코드는 GitHub에 있습니다.

멀티스레딩을 지원하는 Vim 패치가 폐기된 후 Neovim 프로젝트는 2014년에 시작되었습니다. 2014년 3월에는 적어도 한 명의 정규 개발자를 지원할 정도로 자금 조달이 잘 되었습니다. 많은 프런트엔드가 Neovim의 기능을 사용하는 개발을 지원하고 있습니다.

Neovim은 2021년 7월 2일 Neovim 0.5 버전을 사용하여 VimL이 아닌 Lua 언어로 기본 구성 파일을 작성하는 기능과 같이 내장된 언어 서버 프로토콜 지원 및 Lua에 대한 완벽한 지원을 달성했습니다.

VIM 설치

VIM 편집기를 설치하는 것은 매우 쉽습니다. 설치하려면 단일 명령만 있으면 됩니다. VIM 편집기를 설치하려면 다음 명령을 사용합니다.

 $ sudo apt-get install vim 
소프트웨어 Vi 편집기 1

유형 '그리고' 그리고 누르세요 입력하다 , 필수 패키지 및 애플리케이션 설치가 시작됩니다.

명세서 범위

그런 다음 터미널이나 애플리케이션 관리자에서 vim을 실행할 수 있습니다.

아래와 같이 VIM을 입력하여 시스템에서 찾을 수 있습니다.

소프트웨어 Vi 편집기 2

아이콘을 클릭하면 VIM 편집기용 터미널이 열립니다. 아래와 같은 모습입니다.

소프트웨어 Vi 편집기 3

글쎄, 우리는 시스템에 VIM 편집기를 성공적으로 설치했습니다. 이제 우리는 이를 사용하여 모든 프로그래밍 언어로 코딩할 수 있습니다.