Vim-퀵 가이드
Vim 편집기는 오늘날 우리가 사용하는 가장 인기있는 텍스트 편집기 중 하나입니다. Vi 편집기의 복제본이며 Bram Moolenaar가 작성했습니다. 크로스 플랫폼 편집기이며 Windows, Linux, Mac 및 기타 UNIX 변형과 같은 가장 널리 사용되는 플랫폼에서 사용할 수 있습니다. 이 장에서는 다음 항목에 대해 설명합니다.
- Introduction
- Vim의 특징
- Vim이 만들어진 이유는 무엇입니까?
소개
Vim은 Vi IM증명되었습니다. Bram Moolenaar가 작성한 무료 오픈 소스 텍스트 편집기입니다. 1991 년 UNIX 변형 용으로 처음 출시되었으며 주요 목표는 1976 년에 출시 된 Vi 편집기를 개선하는 것이 었습니다.
Vim은 복제 Vi 편집기로 간주됩니다. Vi와 마찬가지로 명령 중심 편집기이기도합니다. Vim 학습의 장점 중 하나는 어디에서나 사용할 수 있다는 것입니다. Linux, Mac, HP-UX, AIX 등과 같은 UNIX 변형을 선택하면 Vim이 기본적으로 제공됩니다. Vim은 전통적으로 GUI가 없지만 이제는 GUI를 제공하는 gVim이라는 별도의 설치 프로그램이 있습니다.
Vim의 특징
이 섹션에서는 Vim의 몇 가지 중요한 기능에 대해 설명합니다.
메모리 사용량이 매우 적습니다.
명령 중심입니다. 몇 가지 명령으로 복잡한 텍스트 관련 작업을 수행 할 수 있습니다.
고도로 구성 가능하며 간단한 텍스트 파일을 사용하여 구성을 저장합니다.
Vim에 사용할 수있는 많은 플러그인이 있습니다. 이 플러그인을 사용하여 기능을 확장 할 수 있습니다.
여러 창을 지원합니다. 이 기능을 사용하면 화면을 여러 창으로 분할 할 수 있습니다.
다중 창과 동일하며 다중 버퍼도 지원합니다.
여러 파일에서 작업 할 수있는 여러 탭을 지원합니다.
Vim 명령을 반복적으로 녹음하고 재생할 수있는 녹음 기능을 지원합니다.
Vim이 만들어진 이유
Vim은 1976 년 Bill Joy가 만든 오리지널 Vi 에디터를 기반으로합니다. 그래서 Bram은 Emacs 커뮤니티가 왜 Emacs가 Vi / Vim보다 나은지에 대한 논쟁으로 사용했던 많은 누락 된 기능을 구현했습니다.
Vim은 경량 패키지이며 설치가 정말 간단합니다. 이 장에서는 다음 항목에 대해 설명합니다.
- Windows 플랫폼에 설치
- Debian 기반 Linux에 설치
- RPM 기반 Linux에 설치
Windows 플랫폼에 설치
Vim에는 특별한 요구 사항이 없습니다. 모든 종속성을 제공하는 간단한 소프트웨어 번들입니다.
설치
Vim을 다운로드하려면 vim.org를 방문하십시오.
왼쪽 창에서 다운로드 옵션을 클릭하십시오.
PC 클릭 -MS-DOS 및 MS-Windows 옵션
이 페이지에서 .exe 설치 프로그램을 다운로드 하십시오. 이 튜토리얼을 작성할 당시 설치 프로그램 이름은 gvim80.exe였습니다.
설치 프로그램을 두 번 클릭하고 화면 지침에 따라 설치를 완료하십시오.
구성
Vim은 설정을 _vimrc라는 간단한 텍스트 파일에 저장하며 사용자의 홈 디렉토리에 있습니다.
현재 사용자의 홈 디렉토리를 찾으려면 터미널에서 아래 명령을 실행하십시오-
$ echo %userprofile%
홈 디렉토리로 이동하여 _vimrc라는 새 파일을 만듭니다. 이 파일에 확장자가 없는지 확인하십시오.
이 파일을 텍스트 편집기에서 열고 다음 텍스트를 입력하고 저장하십시오-
set nu
이제 Vim은 파일을 열 때 줄 번호를 표시합니다. 나중에이 파일에 더 많은 옵션을 추가 할 것입니다.
Debian 기반 Linux에 설치
Linux 플랫폼에 설치하는 것은 Windows에 비해 매우 간단합니다. 이 섹션에서는 Debian 기반 Linux에서의 설치 및 구성에 대해 설명합니다.
설치
터미널에서 아래 명령 실행-
$ sudo apt-get update
$ sudo apt-get install vim
Vim이 올바르게 설치되었는지 확인하려면 아래 명령을 실행하십시오.
$ which vim
Vim 바이너리의 위치를 출력해야합니다. 제 경우에는-
/usr/bin/vim
구성
Vim은 .vimrc라는 간단한 텍스트 파일에 설정을 저장하며 사용자의 홈 디렉토리에 있습니다.
현재 사용자의 홈 디렉토리를 찾으려면 터미널에서 아래 명령을 실행하십시오-
$ echo $HOME
홈 디렉토리로 이동하여 .vimrc라는 새 파일을 만듭니다. 이 파일에 확장자가 없는지 확인하십시오.
이 파일을 텍스트 편집기에서 열고 다음 텍스트를 입력하고 저장하십시오-
set nu
이제 Vim은 파일을 열 때 줄 번호를 표시합니다. 나중에이 파일에 더 많은 옵션을 추가 할 것입니다.
RPM 기반 Linux에 설치
이 섹션에서는 RPM 기반 Linux에서의 설치 및 구성에 대해 설명합니다.
설치
터미널에서 아래 명령 실행-
$ su - $ yum install vim
Vim이 올바르게 설치되었는지 확인하려면 아래 명령을 실행하십시오.
$ which vim
Vim 바이너리의 위치를 출력해야합니다. 제 경우에는-
/usr/bin/vim
구성
Vim은 .vimrc라는 간단한 텍스트 파일에 설정을 저장하며 사용자의 홈 디렉토리에 있습니다.
현재 사용자의 홈 디렉토리를 찾으려면 터미널에서 아래 명령을 실행하십시오-
$ echo $HOME
홈 디렉토리로 이동하여 .vimrc라는 새 파일을 만듭니다. 이 파일에 확장자가 없는지 확인하십시오.
이 파일을 텍스트 편집기에서 열고 다음 텍스트를 입력하고 저장하십시오-
set nu
이제 Vim은 파일을 열 때 줄 번호를 표시합니다. 나중에이 파일에 더 많은 옵션을 추가 할 것입니다.
Vim은 원래 Vi 편집기의 복제본입니다. 이 장에서는 다른 Vi 클론에 대해 설명합니다. 이 장의 주요 목적은 다른 클론과 원래 Vi 편집기와의 호환성을 아는 것입니다.
이 장에서는 다음 항목에 대해 설명합니다.
- Vi
- Stevie
- Elvis
- nvi
- vile
- 오리지널 Vi와의 호환성
Vi
Vi는 Visual의 약자입니다. 원래 UNIX 용으로 만들어진 화면 지향 텍스트 편집기입니다. Vi의 원본 코드는 1976 년 Bill Joy가 작성했으며 BSD 플랫폼에서 처음 출시되었습니다. Vi는 당시 가장 일반적이었던 ed 편집기의 확장입니다.
Vim은 여러 모드를 도입 한 최초의 편집자입니다. 텍스트 편집, 텍스트 선택 및 명령 실행을위한 별도의 모드가 있습니다. Vim 편집기는이 모든 모드를 지원합니다. 이 자습서의 뒷부분에서 이러한 모드에 대해 설명합니다.
스티비
Stevie 편집기는 Atari ST 플랫폼 용으로 개발되었습니다. 1987 년에 출시 된 ST Editor for VI enthusiastic의 약자입니다.
매우 간단했고 원래 Vi 편집기의 아주 작은 부분 만 제공했습니다. 그러나 Atari ST 플랫폼에서 이동하는 사용자에게 친숙한 환경을 제공했습니다.
엘비스
Elvis의 주요 의도는 Stevie 편집기 제한을 제거하는 것이 었습니다. Stevie는 RAM에 전체 파일을로드하는 데 사용되었지만 Elvis는 버퍼를 도입하여 이러한 제한을 제거했습니다. 또한 구문 강조 표시, 다중 창 지원, 네트워킹 지원 및 간단한 GUI와 같은 일부 기능을 추가했습니다.
nvi
nvi는 새로운 Vi를 의미합니다. 캘리포니아 버클리 대학의 AT & T 연구소와 컴퓨터 과학 연구 그룹 (CSRC) 간의 라이센스 분쟁의 결과였습니다. Vi는 ed 편집기를 기반으로하며 BDS와 함께 Vi를 배포하는 것을 제한하는 AT & T의 라이선스를 받았습니다. 따라서 그들은 Vi를 다시 작성하고 BSD 라이센스로 릴리스했습니다.
정력
Vim은 Vi의 개선 된 버전이며 Vi가 뒤처진 곳에 많은 기능을 추가했습니다. 다음과 같은 많은 유용한 기능을 추가했습니다.
- 여러 창 / 탭 / 버퍼
- Vim 스크립팅 언어 소개
- 200 개 이상의 언어에 대한 구문 강조
- 컴파일러, 인터프리터 및 디버거와 통합
비열한
Vile은 Emacs와 같은 Vi의 약자이며 두 편집기에서 인기있는 기능을 가져와 하나로 결합하려는 시도였습니다. Vile의 인기 기능은 다음과 같습니다.
- 각 파일 유형에 대해 하나의 편집 모드
- 비열한 절차 적 언어의 도입
- 사용자 선택에 따라 키를 바인딩하는 명명 된 기능
Vioriginal Vi와의 호환성
위에서 논의한 편집기는 Vi 클론으로 간주되지만 원본 Vi와 100 % 호환되지 않습니다. 아래 표는 호환성에 대한 자세한 내용을 보여줍니다.
복제 | Vi 호환성 | 메모 |
---|---|---|
스테 비 | 10 % | 제한된 기능이 일반적이었습니다. |
비열한 | 10 % | 제한된 기능과 Vi 모드가 일반적이었습니다. |
엘비스 | 80 % | 더 큰 기능이 일반적이었습니다. |
nvi | 95 % | 더 큰 기능이 일반적이었습니다. |
정력 | 99 % | 몇 가지 추가 기능이있는 Vi와 거의 동일 |
이 섹션부터 Vim으로 손을 더럽힐 것입니다. 이 장에서는 다음 항목에 대해 설명합니다.
Vim 시작
Vim 모드
새 파일 생성
읽기 전용 모드로 파일보기
기존 파일 편집
Vim 시작
Vim은 오늘날의 GUI 기반 편집기와 약간 다릅니다. GUI 및 터미널에서 시작하고 사용할 수 있습니다.
그래픽 런처 사용
그래픽 런처에서 Vim을 시작하려면 gVim 아이콘을 더블 클릭하십시오. 다음과 같이 편집기 창이 열립니다.
터미널 사용
터미널에서 Vim을 사용하는 것은 Windows 및 Linux 플랫폼에서 동일합니다. 터미널에서 Vim을 시작하고 종료하려면 다음 단계를 수행하십시오.
터미널을 열고 다음과 같이 vim 명령을 입력하십시오-
$ vim
다음과 같이 터미널에서 Vim이 열립니다.
닫으려면 Esc 키를 누른 다음 콜론 (:)과 q를 누릅니다. Vim에서 q 명령은 종료를 나타냅니다. 이 명령은 편집기 왼쪽 하단에 표시됩니다.
Vim 모드
Vim은 여러 모드를 지원합니다. 이 섹션에서는 매일 사용되는 몇 가지 중요한 모드에 대해 설명합니다.
명령 모드
Vim이 시작되는 기본 모드입니다. 이 모드에서 편집기 명령을 입력 할 수 있습니다. 이 모드에서는 복사, 붙여 넣기, 삭제, 바꾸기 등과 같은 다양한 명령을 사용할 수 있습니다. 이 명령은 이후 섹션에서 설명합니다.
NOTE − Here onwards, any Vim command without colon indicates that we are executing that command in command mode.
삽입 모드
이 모드를 사용하여 텍스트를 입력 / 편집 할 수 있습니다. 기본 명령에서 삽입 모드로 전환하려면 i 키를 누릅니다. 에디터 좌측 하단에 현재 모드가 표시됩니다.
삽입 모드에 있으면 모든 텍스트를 입력 할 수 있습니다. 아래 이미지는 이것을 보여줍니다-
이 모드에서 명령 모드로 다시 전환하려면 Esc 키를 사용하십시오.
명령 줄 모드
이 모드는 명령 입력에도 사용됩니다. 이 모드의 명령은 콜론 (:)으로 시작합니다. 예를 들어, 이전 섹션에서 quit 명령이이 모드로 입력되었습니다. 명령 또는 삽입 모드에서이 모드로 이동할 수 있습니다.
명령 모드에서이 모드로 전환하려면 콜론을 입력하십시오.
삽입 모드에서이 모드로 전환하려면 Esc 키를 누르고 콜론을 입력합니다.
아래 이미지에서 왼쪽 하단의 콜론은 라인 모드를 나타냅니다.
NOTE − Here onwards, any Vim command starting with colon indicates that we are executing that command in command line mode.
비주얼 모드
이 모드에서는 텍스트를 시각적으로 선택하고 선택한 섹션에서 명령을 실행할 수 있습니다.
명령 모드에서 비주얼 모드 유형 v로 전환하려면
다른 모드에서 시각 모드로 전환하려면 먼저 Esc 키를 눌러 명령 모드로 다시 전환 한 다음 v를 입력하여 시각 모드로 전환합니다.
아래 이미지에서 왼쪽 하단은 시각적 모드를 보여줍니다.
새 파일 생성
새 파일을 만들고 저장하려면 아래 단계를 수행하십시오.
다음 명령을 실행하여 Vim을 엽니 다.
$ vim
Vim에 다음 명령을 입력하십시오.
:edit message.txt
삽입 모드로 전환
이미 존재하는 경우 파일을 다시로드합니다.
i
텍스트 입력
명령 모드로 다시 전환
Esc
파일에 변경 사항 저장
:w
이제 message.txt 파일이 생성됩니다.
Vim 종료
:q
읽기 전용 모드로 파일 열기
–R 옵션을 사용하여 읽기 전용 모드로 파일 열기
$ vim -R message.txt
아래 이미지에서 왼쪽 하단은 읽기 전용 모드를 보여줍니다-
또는 view 명령을 사용하여 동일한 결과를 얻을 수 있습니다.
$ view message.txt
기존 파일 편집
기존 파일을 편집하려면 아래 단계를 수행하십시오-
Vim을 사용하여 파일 열기
$ vim message.txt
삽입 모드로 전환하고 거기에 텍스트를 입력하십시오.
i
변경 사항을 저장하지 않고 편집기 종료
:q!
다음 명령을 사용하여 변경 사항을 저장하고 편집기를 종료하십시오-
또는
:wq
Vim은 기능이 풍부한 편집기이므로 모든 것을 기억하기가 어려울 것입니다. 하지만 걱정할 필요는 없습니다. 언제든지 도움을 요청할 수 있습니다. 다행히이 도움말은 Vim 자체에서 제공합니다.
이 장에서는 다음 항목에 대해 설명합니다.
- 도움말 매뉴얼에 액세스
- 특정 주제에 대한 도움말
- 매뉴얼에서 도움말 문구 검색
- 온라인 도움말에 액세스
도움말 매뉴얼에 액세스
도움말 매뉴얼은 Vim 편집기 자체와 함께 제공되며 정말 포괄적입니다. 도움말에 액세스하려면 아래 명령을 실행하십시오-
:help
특정 주제에 대한 도움말
도움말 매뉴얼은 Vim에 대한 전체 도움말을 보여줍니다. 그러나 우리가 특정 주제에만 관심이 있다면 어떨까요? Vim은 다음 구문과 함께 이에 대한 명령을 제공합니다.
:help <topic-name>
위의 명령에서 <topic-name>을 관심있는 주제로 바꿉니다. vim 모드에 대한 도움말에 액세스하려면 다음 명령을 실행하십시오.
:help modes
매뉴얼에서 도움말 문구 검색
이름을 아는 경우에만 특정 주제를 검색 할 수 있습니다. 그러나 도움말 항목의 정확한 이름을 모르는 경우에는 어떻게해야합니까? 이 경우 아래 명령을 사용할 수 있습니다-
:helpgrep <phrase>
예를 들어 Vim에서 탐색에 대한 도움말에 액세스하려면 아래 명령을 실행하십시오.
:helpgrep navigation
온라인 도움말에 액세스
Vim은 온라인 도움말도 제공합니다. 온라인 도움말에 액세스하려면-
vim-help URL 방문
또한 vim-docs 문서를 참조 할 수도 있습니다.
Vim은 편집 기능을 매우 강력하게 만드는 많은 명령을 제공합니다. 이 장에서는 다음 항목에 대해 설명합니다.
- Insert
- Append
- 새 줄 열기
- Substitute
- Change
- Replace
- Join
커서 앞에 텍스트 삽입
커서 앞에 텍스트를 삽입하려면 다음 단계를 수행하십시오.
- 커서 앞에 텍스트를 삽입하려면 다음 단계를 수행하십시오.
- 삽입 모드로 전환
i
줄 시작 부분에 텍스트 삽입
당신이 줄의 중간에 있고 현재 줄의 시작 부분에 텍스트를 삽입하고 싶다고 가정하고 다음 단계를 수행하십시오.
- 명령 모드로 전환
Esc
- 삽입 모드 활성화
I
이 작업은 커서를 현재 줄의 시작 부분으로 이동하고 삽입 모드에서 Vim을 전환합니다.
커서 뒤에 텍스트 추가
커서 뒤에 텍스트를 추가하려면 다음 단계를 수행하십시오.
- 명령 모드로 전환하고 커서를 적절한 위치로 이동
Esc
- 삽입 모드로 전환
a
이 작업은 커서를 한 위치 씩 이동하고 삽입 모드에서 Vim을 전환합니다.
줄 끝에 텍스트 추가
당신이 줄의 중간에 있고 현재 줄의 끝에 텍스트를 추가하고 싶다고 가정하고 다음 단계를 수행하십시오.
- 명령 모드로 전환
Esc
- 삽입 모드로 전환
A
이 작업은 커서를 줄 끝으로 이동하고 삽입 모드에서 Vim을 전환합니다.
커서 아래에 새 줄 열기
라인의 중간에 있고 현재 라인 아래에 새 라인을 열고 다음 단계를 수행한다고 가정 해 봅시다.
- 명령 모드로 전환
Esc
- 삽입 모드로 전환
o
이 작업은 현재 줄 아래에 빈 줄을 삽입하고 삽입 모드에서 Vim을 전환합니다.
커서 위에 새 줄 열기
라인의 중간에 있고 현재 라인 위에 새 라인을 열고 다음 단계를 수행한다고 가정 해 봅시다.
- 명령 모드로 전환
Esc
- 삽입 모드로 전환
o
이 작업은 현재 줄 위에 빈 줄을 삽입하고 삽입 모드에서 Vim을 전환합니다.
대체 텍스트
단일 문자를 대체하고 다음 단계를 수행한다고 가정 해 보겠습니다.
- 명령 모드로 전환
Esc
- 커서를 적절한 위치로 이동
- 삽입 모드로 전환
s
이 작업은 커서 아래에있는 문자를 삭제하고 삽입 모드에서 Vim을 전환합니다. 전체 줄을 대체하려면-
s
이 작업은 전체 라인을 삭제하고 삽입 모드에서 Vim을 전환합니다.
텍스트 변경
현재 줄의 텍스트를 변경하고 다음 단계를 수행한다고 가정 해 보겠습니다.
- 명령 모드로 전환
Esc
- 다음 명령을 실행하십시오-
cc
이것은 S를 사용하는 대체 행동과 유사합니다.
현재 커서 위치에서 텍스트를 변경하려면 다음 명령을 실행하십시오.
C
이 작업은 현재 커서 위치 이후의 텍스트를 삭제하고 삽입 모드에서 Vim을 전환합니다.
텍스트 교체
단일 문자를 바꾸려면 다음 단계를 수행하십시오.
- 명령 모드로 전환
Esc
- 커서를 적절한 위치로 이동
- 다음 명령을 실행하십시오-
r
- 대체 할 문자를 입력하십시오.
이 명령은 삽입 모드에서 Vim을 전환하지 않습니다.
전체 줄을 바꾸려면 다음을 실행하십시오.
R
아래 그림과 같이 Vim을 교체 모드로 전환합니다.
텍스트 결합
두 줄을 연결하려면 다음 단계를 수행하십시오.
- 명령 모드로 전환
Esc
- 커서를 적절한 줄로 이동
- 다음 명령을 실행하십시오-
J
Vim은 고급 탐색 기능을 크게 지원합니다. 이 장에서는 생산성 향상에 도움이되는 몇 가지 인기있는 탐색 기술에 대해 설명합니다.
기본 탐색
기본 탐색에서는 위치별로 왼쪽, 오른쪽, 위, 아래로 탐색 할 수 있습니다. 아래 명령을 사용할 수 있습니다-
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | h 커서를 왼쪽으로 한 위치 이동 |
2 | l 커서를 오른쪽으로 한 위치 이동 |
삼 | k 커서를 한 줄 위쪽으로 이동 |
4 | j 커서를 한 줄 아래로 이동 |
다중 위치 탐색을 수행하려면 다음 명령과 함께 숫자를 사용하십시오. 예를 들어 현재 줄에서 10 줄 아래로 커서를 이동하려면 다음 명령을 실행합니다.
10j
나머지 명령에도 숫자를 사용할 수 있습니다.
이 외에도 아래 명령은 유용한 탐색을 수행합니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | 0 현재 줄의 시작 부분으로 커서 이동 |
2 | $ 현재 줄의 끝으로 커서 이동 |
삼 | Ctrl + f 전체 페이지 아래로 스크롤 |
4 | Ctrl + b 전체 페이지 위로 스크롤 |
라인으로 이동
아래 명령은 특정 줄로 이동하는 데 사용할 수 있습니다-
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | :n n 번째 줄로 이동 |
2 | :0 파일의 시작으로 이동 |
삼 | :$ 파일 끝으로 이동 |
단어 탐색
단어 탐색을 위해 다음 명령을 사용할 수 있습니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | w 다음 단어의 시작 부분으로 커서 이동 |
2 | e 현재 단어의 끝으로 커서 이동 |
삼 | b 이전 단어의 시작 부분으로 커서 이동 |
점프 사용
Vim은 점프 목록을 사용하여 내비게이션을 추적합니다. 그 목록을 앞뒤로 이동할 수 있습니다.
점프 목록은 파일 이름, 줄 번호 및 열 번호를 추적하여 방문한 모든 장소를 추적합니다.
점프 목록을 보려면 다음 명령을 실행하십시오-
:jumps
다음 명령은 점프 목록을 기반으로-
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | Ctrl + o 이전 위치로 다시 이동 |
2 | Ctrl + i 다음 위치로 이동 |
우리는 이전에 기본적인 편집을 보았습니다. Vim의 다른 편집 기능에 대해 알아 보겠습니다. 이 섹션에서는 다음 항목에 대해 설명합니다.
- Buffer
- 파일 교체
- 잘라 내기, 복사, 삭제, 붙여 넣기 작업
- 작업 실행 취소 및 다시 실행
완충기
버퍼는 Vim에서 사용하는 임시 메모리입니다. 편집기에서 파일을 열면 Vim은 디스크 드라이브에서 내용을로드합니다. 이러한 내용은 실제로 버퍼에서 파일을 편집하는 파일을 편집 할 때마다 메모리 (RAM)에 저장됩니다. 편집을 마치고 파일을 저장하면 버퍼 내용 만 적절한 파일로 전송됩니다.
교환
스왑 영역은 버퍼 내용을 주기적으로 저장하기 위해 Vim에서 생성 한 파일입니다. 파일을 편집하는 동안 어떤 이유로 든 변경 사항이 손실 될 수 있으며 Vim은 데이터 복구를 위해 스왑 파일을 제공합니다.
스왑 파일의 실제 이름을 얻으려면 다음 명령을 실행하십시오-
:swapname
예를 들어 내 경우 이름은 아래 이미지와 같이 message.txt.swp였습니다.
잘라 내기, 복사 및 붙여 넣기 작업
우리는 종종 텍스트에 대해 잘라 내기, 복사 및 붙여 넣기 작업을 수행합니다. Vim은 이러한 작업을 수행하기 위해 다음 명령을 제공합니다 (y는 yank, p는 붙여 넣기 작업을 나타냄)-
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | x 커서 위치에서 문자 삭제 |
2 | X 커서 위치에서 이전 문자 삭제 |
삼 | y 커서 위치에서 단일 문자 복사 |
4 | p 커서 위치 뒤에 문자 붙여 넣기 |
5 | P 커서 위치 앞에 문자 붙여 넣기 |
다중 위치 명령
잘라 내기, 복사 및 붙여 넣기 명령을 단어와 문장으로 사용할 수도 있습니다. 아래 표는 이것을 보여줍니다-
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | dw 커서 위치에서 단어 삭제 |
2 | D 커서 위치에서 전체 줄 삭제 |
삼 | dd 전체 줄 삭제 |
4 | Y 전체 라인 복사 |
5 | yy 전체 라인 복사 |
여러 줄 / 여러 단어 작업을 수행하려면 명령과 함께 숫자를 사용하십시오. 이 구문을 다른 명령에도 사용할 수 있습니다. 예를 들어, 3 개의 단어를 삭제하려면-
3dw
실행 취소
하나 또는 여러 작업을 취소 할 수 있습니다. 한 번 실행 취소 작업을 수행하려면-
u
여러 실행 취소 작업을 수행하려면 동일한 명령에 숫자를 사용하십시오. 예를 들어, 아래 명령은 마지막 3 개의 작업을 취소합니다.
3u
이 외에도 모든 실행을 취소하려면 다음 명령을 실행하십시오.
U
다시 하다
다시 실행은 실행 취소의 적절한 작업입니다. 다시 실행 작업을 수행하려면 명령을 실행하십시오.
Ctrl + r
OR
: red
검색은 매우 일반적인 작업이며 우리가 가장 많이 사용하는 작업 중 하나입니다. 이 장에서는 이러한 작업을 효과적으로 수행 할 수있는 몇 가지 명령을 살펴 보겠습니다.
이 장에서는 다음 항목에 대해 설명합니다.
- 검색 설정
- 현재 파일에서 검색
- 여러 파일에서 검색
- 도움말 파일에서 검색
관련 설정 검색
증분 검색을 수행하려면 다음 명령을 실행하십시오-
:set incsearch
검색을 강조하려면 다음 명령을 실행하십시오-
:set hlsearch
이 명령은 현재 일치하는 항목을 자동으로 강조 표시합니다. 예를 들어 아래 이미지에서 여우 단어가 강조 표시됩니다.
증분 및 강조 표시된 검색을 비활성화하려면 다음 명령을 실행하십시오-
:set noincsearch
:set nohlsearch
현재 파일에서 검색
정방향으로 검색
다음 명령을 사용하여 순방향으로 검색을 수행하십시오.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | /<expression> 정방향 검색 표현식 |
2 | n 다음 발생을 찾으십시오. 이것은 동일하고 다음 찾기 |
삼 | N 이전 발생을 찾습니다. 이전 찾기와 동일합니다. |
4 | // 이전 앞으로 검색 반복 |
역방향으로 검색
다음 명령을 사용하여 역방향으로 검색을 수행하십시오.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | ?<expression> 역방향으로 표현식 검색 |
2 | n 이전 발생을 찾습니다. 이것은 동일하고 이전 찾기 |
삼 | N 다음 발생을 찾으십시오. 다음 찾기와 동일합니다. |
4 | ?? 이전 역방향 검색 반복 |
커서 아래 단어 검색
임의의 단어 아래에 커서를 놓고 다음 명령을 실행하여 검색 작업을 수행합니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | * 현재 단어의 다음 발생 검색 |
2 | # 현재 단어의 이전 발생 검색 |
여러 파일에서 검색
vimgrep 명령을 사용하여 여러 파일에서 <expression>을 검색 할 수 있습니다. 예를 들어 아래 명령은 문자열을 검색합니다.Jarvis 모든 텍스트 파일에서.
:vimgrep Jarvis *.txt
다음 및 이전 발생으로 이동하려면 다음 명령을 사용해야합니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | :cn 다음 표현으로 이동 |
2 | :cN 이전 표현식으로 이동 |
Vim은 매우 강력한 편집기입니다. 여러 파일, 버퍼 및 창에서 작동하는 많은 고급 기능을 지원합니다. 이 섹션에서는 다음 항목에 대해 설명합니다.
- 여러 파일
- 다중 버퍼
- 여러 탭
- 여러 창
여러 파일
파일을 편집 중이고 동일한 Vim 세션에서 다른 파일을 열고 싶다고 가정 해 보겠습니다. 이 경우 Vim의 편집 명령을 사용할 수 있습니다. 아래 표는 이러한 명령을 보여줍니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | :e 편집을 위해 버퍼에 새 파일로드 |
2 | :edit : e와 동일 |
삼 | :e <tab> 현재 디렉토리에서 편집 할 파일 나열 |
4 | :edit <tab> : e <tab>과 동일 |
다중 버퍼
Vim 버퍼가 무엇인지 이미 살펴 보았습니다. Vim은 다중 버퍼를 지원합니다. 아래 명령은 버퍼 작업에 유용합니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | :badd <file> 새 버퍼에 파일 추가 |
2 | :bN N 번째 버퍼로 전환합니다. 예를 들어 세 번째 버퍼로 전환하려면 : b3 |
삼 | :bnext 버퍼 목록에서 다음 버퍼로 이동 |
4 | :bprevious 버퍼 목록에서 이전 버퍼로 이동 |
5 | :buffers 모든 버퍼 나열 |
6 | :bfirst 첫 번째 버퍼로 이동 |
7 | :blast 마지막 버퍼로 이동 |
8 | :ball 모든 버퍼로드 |
예를 들어, 아래 명령은 버퍼에 새 파일을 추가합니다.
이제 버퍼에 두 개의 파일이 있습니다. 이것을 표시하려면 아래 명령을 실행하십시오-
:buffers
다음과 같은 출력이 표시됩니다.
여러 탭
다른 편집기와 마찬가지로 Vim에서 여러 탭을 열 수도 있습니다. 아래 표는 탭 관련 명령을 설명합니다-
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | :tabnew 새 탭 열기 |
2 | :tabnew <file> 탭에서 새 파일 열기 |
삼 | :tabclose 현재 탭 닫기 |
4 | :tabnext 다음 탭으로 이동 |
5 | :tabprevious 이전 탭으로 이동 |
6 | :tabfirst 첫 번째 탭으로 이동 |
7 | :tablast 마지막 탭으로 이동 |
예를 들어 아래 이미지는 여러 탭을 보여줍니다.
여러 창
Vim에서는 다음 명령을 사용하여 새 창을 만들 수 있습니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | :new <file> 새 창 열기 |
2 | :new <file> 새 창에서 파일 열기 |
아래 이미지에서 다음 명령을 실행하면 현재 Vim 창이 두 부분으로 나뉘어져있는 것을 볼 수 있습니다.
$vim message.txt
:new
Vim은 북마크 기능을 지원합니다. 이 기능을 사용하여 파일 내 탐색을 훨씬 빠르게 할 수 있습니다. 이 장에서는 다음 항목에 대해 설명합니다.
- 북마크 만들기
- 북마크로 이동
- 모든 북마크 나열
- 북마크 삭제
- 로컬 북마크
- 글로벌 북마크
북마크 만들기
북마크를 생성하려면 다음 명령을 실행하십시오-
m{bookmark-name}
위의 예에서 bookmark-name은 단일 알파벳 문자입니다. 예를 들어 아래 명령은 이름 a의 책갈피를 만듭니다.
ma
북마크로 이동
북마크가 생성되면 여기로 이동할 수 있습니다. 다음 명령을 사용하여 북마크로 이동할 수 있습니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | `{bookmark-name} 북마크의 정확한 위치로 이동합니다. 이 문자는 역 따옴표입니다. |
2 | ‘{bookmark-name} 책갈피 줄의 시작 부분으로 이동합니다. 이 문자는 작은 따옴표입니다. |
모든 북마크 나열
모든 북마크를 나열하려면 다음 명령을 실행하십시오-
:marks
아래 이미지에는 현재 파일에 대한 북마크 목록이 표시됩니다.
북마크 삭제
북마크를 삭제하려면 다음 명령을 실행하십시오-
:delmarks {bookmark-name}
예를 들어 아래 명령은 이름이 a 인 북마크를 삭제합니다.
:delmarks a
로컬 책갈피 및 글로벌 책갈피
여러 파일이 열려 있고 열려있는 파일 중 하나의 특정 위치로 이동하려는 경우 Vim의 글로벌 마크 기능을 사용할 수 있습니다.
책갈피 이름이 대문자이면 글로벌 책갈피입니다. 위에서 설명한 명령은 로컬 및 글로벌 책갈피 모두에 적용 할 수 있습니다.
매크로는 기록 및 재생 기능입니다. 이것이 Vim 명령과 결합되면 정말 강력한 조합이됩니다. 이 섹션에서는 다음 항목에 대해 설명합니다.
- 녹음 시작
- Vim 작업 수행
- 녹음 중지
- 녹음 재생
녹음 시작
기록을 시작하려면 q 다음에 매크로 이름으로 소문자를 누릅니다. 예를 들어 아래 예에서는 "a"를 매크로 이름으로 사용했습니다.
Vim 작업 수행
이 단계에서는 잘라 내기, 복사, 삭제, 바꾸기 등과 같은 Vim 작업을 수행 할 수 있습니다. 다음 명령을 실행하여 이러한 작업을 볼 수 있습니다.
:registers
예를 들어, 아래 명령은 yank 및 delete 작업이 수행되었음을 보여줍니다.
녹음 중지
작업을 마치면 q를 다시 눌러 녹음을 중지합니다. 이제 녹화 모드는 아래와 같이 사라집니다.
플레이
재생하려면 아래 명령을 실행하십시오-
@{macro-name}
예를 들어 매크로 "a"를 실행하려면 아래 명령을 실행하십시오.
@a
동일한 매크로를 여러 번 재생하려면 숫자를 함께 사용하십시오. 예를 들어 동일한 매크로를 10 번 실행하려면 다음 명령을 실행하십시오.
10@a
Vim은 많은 레지스터를 제공합니다. 이러한 레지스터를 여러 클립 보드로 사용할 수 있습니다. 이 기능은 여러 파일로 작업 할 때 매우 유용합니다. 이 장에서는 다음 항목에 대해 설명합니다.
- 레지스터의 텍스트 복사
- 레지스터에서 텍스트 붙여 넣기
- 사용 가능한 레지스터 나열
- 등록 유형
레지스터의 텍스트 복사
복사를 위해 일반적인 yank 명령, 즉 yy를 사용할 수 있으며 레지스터에 저장하려면 다음 구문을 사용할 수 있습니다.
“<register-name><command>
예를 들어 레지스터 "a"의 텍스트를 복사하려면 다음 명령을 사용하십시오.
“ayy
레지스터에서 텍스트 붙여 넣기
레지스터 사용에서 텍스트를 붙여 넣으려면-
“<register-name>p
예를 들어 아래 명령은 레지스터 "a"에서 텍스트를 복사합니다.
“ap
사용 가능한 레지스터 나열
사용 가능한 모든 레지스터를 나열하려면 다음 명령을 사용하십시오.
:registers
등록 유형
Vim은 다음 유형의 레지스터를 지원합니다.
이름이없는 레지스터
이름이없는 레지스터는 ""로 표시됩니다. Vim은이 레지스터에 삭제되거나 복사 된 텍스트를 저장합니다.
명명 된 레지스터
26 개의 명명 된 레지스터를 사용할 수 있습니다. az 또는 AZ를 사용할 수 있습니다. 기본적으로 vim은 이러한 레지스터를 사용하지 않습니다.
소문자 레지스터 이름을 사용하면 내용을 덮어 쓰고 대문자 이름을 사용하면 내용이 해당 레지스터에 추가됩니다.
번호가 매겨진 레지스터
0 ~ 9 개의 명명 된 레지스터를 사용할 수 있습니다. Vim은 이러한 레지스터를 yank 및 delete 명령의 텍스트로 채 웁니다.
- 번호가 매겨진 레지스터 0에는 가장 최근의 yank 명령의 텍스트가 포함됩니다.
- 번호가 매겨진 레지스터 1에는 가장 최근의 삭제 또는 변경 명령에 의해 삭제 된 텍스트가 포함됩니다.
기본 레지스터
다음은 기본 레지스터입니다-
Sr. 아니요 | 등록 및 설명 |
---|---|
1 | % 현재 파일의 이름 |
2 | # 현재 창의 대체 파일 이름 |
삼 | : 가장 최근에 실행 된 명령 |
4 | . 마지막으로 삽입 된 텍스트를 포함합니다. |
5 | “ 마지막으로 사용한 레지스터 |
접기 기능은 파일 내용이 큰 텍스트 일 때 유용합니다. 이 기능을 사용하면 선택한 파일 부분 만 표시 할 수 있습니다. 이 기능은 프로그래밍 언어로 작업 할 때 특히 유용합니다. 이 장에서는 다음 항목에 대해 설명합니다.
- 접기 기능 활성화 및 비활성화
- 다양한 접기 동작
접기 활성화 및 비활성화
접기를 활성화하려면 다음 명령을 사용하십시오-
:set foldenable
:set foldmethod = indent
접기를 비활성화하려면 다음 명령을 사용하십시오.
:set nofoldenable
접기 동작
접기 닫기
코드를 접으려면 임의의 방법으로 이동하여 다음 명령을 실행하십시오.
zc
예를 들어 아래 이미지는이 작업의 결과를 보여줍니다.
접기 열기
접기를 열려면 다음 명령을 사용하십시오-
zo
아래 이미지는이 작업의 결과를 보여줍니다.
모든 접기 닫기
모든 접기를 닫으려면 다음 명령을 실행하십시오.
zM
아래 이미지는이 작업의 결과를 보여줍니다.
모두 펼치기
모두 펼치려면 다음을 실행하십시오-
zR
아래 이미지는이 작업의 결과를 보여줍니다.
UNIX diff 명령과 유사하게 Vim을 사용하여 훨씬 더 나은 방식으로 diff를 표시 할 수 있습니다. 다채로운 방식으로 diff를 표시합니다. 이 장에서는 다음 항목에 대해 설명합니다.
- 파일 간의 차이점 표시
- diff 모드 활성화 및 비활성화
- diff 모드에서 탐색
- diff 창에서 변경 사항 적용
차이 표시
파일 간의 차이점을 표시하려면 아래 명령을 실행하십시오-
$ vimdiff <file> <file>
OR
$ vim –d <file> <file>
예를 들어 아래 명령은 차이점을 보여줍니다-
위 이미지에서 마젠타 색으로 강조 표시된 텍스트가 일반적입니다. 나머지 텍스트는 빨간색으로 강조 표시되어 공통 텍스트 이후에 약간의 차이가 있음을 나타냅니다.
diff 모드 활성화 및 비활성화
이미 vim에 있고 diff 작업을 수행하려면 다음 명령 중 하나를 사용하십시오.
diffsplit
수평 분할을 수행하려면 아래 명령을 사용하십시오-
:diffsplit filename
위의 이미지는 message-1.txt와 message-2.txt라는 두 파일을 비교하고 있음을 보여줍니다.
수직 diffsplit
수직 분할을 수행하려면 다음 명령을 사용하십시오-
:vert diffsplit <filename>
다음 창이 열립니다-
위의 이미지는 message-1.txt와 message-2.txt라는 두 파일을 비교하고 있음을 보여줍니다.
diff 모드에서 탐색
diff 모드의 탐색은 약간 다릅니다. 예를 들어, 한 창에서 텍스트를 스크롤하면 인접한 창의 텍스트도 스크롤됩니다. 이것을 scrollbind라고합니다. 이 사용을 활성화하려면-
:set scrollbind
이 사용을 비활성화하려면-
:set noscrollbind
이 모드에서 파일을 편집하면 다음 명령을 사용하여 diff를 업데이트하십시오-
:diffupdate
차이 창 간 전환
diff 창 사이를 전환하려면 다음 명령을 실행하십시오-
Ctrl + w Ctrl + w
Ctrl + w를 두 번 눌러야합니다.
이전 변경으로 이동
diff 창에서 다음 명령을 실행하여 이전 변경 사항으로 이동합니다.
[c
다음 변경으로 이동
diff 창에서 다음 명령을 실행하여 다음 변경 사항으로 이동합니다.
]c
차이 창에서 변경 사항 적용
현재 차이 창에 변경 사항 적용
인접한 diff 창에서 현재 diff 창으로 변경 사항을 적용하려면-
:diffget
예를 들어 왼쪽 창에 있고 오른쪽 창에서 현재 창으로 변경하려면 위의 명령을 실행합니다.
현재 창에서 다른 창으로 변경 사항 적용
현재 diff 창에서 인접한 diff 창으로 변경 사항을 적용하려면-
:diffput
예를 들어 왼쪽 창에 있고 현재 창에서 오른쪽 창으로 변경 사항을 적용하려면 위의 명령을 실행합니다.
플러그인을 사용하여 Vim의 기능을 확장 할 수 있습니다. Vim은 많은 플러그인을 지원하며 대부분 무료로 사용할 수 있습니다. 이 장은 Vim 플러그인에 관한 것이며 다음 항목에 대해 논의 할 것입니다.
- 플러그인 관리
- 유용한 플러그인
플러그인 관리
이 섹션에서는 플러그인 관리에 대해 설명합니다. Vim은 다양한 플러그인 관리자를 제공하지만 플러그인 관리자를 사용하지 않고 더 나은 이해를 위해이 모든 단계를 수동으로 수행 할 것입니다. 이 단계를 이해하면 플러그인 관리자를 사용할 수 있습니다.
플러그인 설치
플러그인을 설치하려면 다음 단계를 수행하십시오.
- 사용자의 홈 디렉토리에 .vim / bundle 디렉토리 생성
- 이 디렉토리에 플러그인 복사
- Vim에서 런타임 경로 설정
Vim에 badwolf 플러그인을 설치하겠습니다. vim의 색 구성표입니다.
$ mkdir -p ~/.vim/bundle
$ cd ~/.vim/bundle/ $ git clone https://github.com/sjl/badwolf.git
$ echo "set runtimepath^ = ~/.vim/bundle/badwolf" > ~/.vimrc
이제 플러그인이 설치되었으므로 다음과 같이 badwold 색 구성표를 사용할 수 있습니다.
:colorscheme badwolf
플러그인 업데이트
주의 깊게 살펴보면 플러그인은 파일 모음 일 뿐이며 해당 플러그인을 업데이트하려면 ~ / .vim / bundle에서 적절한 플러그인 디렉토리를 업데이트하면됩니다.
플러그인 제거
Vim에서 플러그인을 제거하는 것은 정말 간단합니다. 플러그인을 제거하려면 다음 단계를 수행하십시오.
- ~ / .vim / bundle에서 플러그인 디렉토리 제거
- 런타임 경로를 적절하게 수정
유용한 플러그인
다음은 유용한 Vim 플러그인 목록입니다.
Sr. 아니요 | 이름 및 설명 |
---|---|
1 | DumpX C / C ++ 코드 분해 |
2 | awk.vim AWK 스크립트 들여 쓰기 |
삼 | Pathogen Vim 패키지 관리자 |
4 | git-switcher.vim git 브랜치 전환을 기반으로 vim 세션을 자동으로 저장하고로드합니다. |
5 | Pyflakes 파이썬 파일에 대한 라이닝 제공 |
Vim을 IDE로 사용하도록 구성 할 수 있습니다. 이 섹션에서는 다음 항목에 대해 설명합니다.
- 구문 강조
- 스마트 들여 쓰기
- Bounce
- 셸 명령 실행
- ctags 및 csope 구성
- 자동 완성 및 자동 제안
구문 강조
구문 강조는 IDE의 중요한 기능 중 하나입니다. 구문 강조를 사용하려면-
:syntax on
예를 들어, 아래 이미지는 C 코드에 대한 구문 강조 표시를 보여줍니다.
구문 강조를 비활성화하려면-
:syntax off
구문 강조가 비활성화되면 다음과 같은 출력이 표시됩니다.
스마트 들여 쓰기
자동 및 스마트 들여 쓰기를 수행하려면 다음 명령을 사용하십시오.
: set autoindent
: set smartindent
이 외에도 아래 명령을 사용하여 C 코드를 자동 들여 쓰기 할 수 있습니다.
: set cindent
되튐
중괄호를 사용하여 여러 문을 결합하는 프로그래밍 언어를 사용하는 경우 % 키가 친구가 될 것입니다. 이 키는 중괄호의 시작과 끝 사이를 빠르게 이동합니다.
예를 들어 11 번째 줄에 % 명령을 실행하면 커서가 4 번째 줄로 이동합니다. 아래 이미지는 다음과 같습니다.
셸 명령 실행
Vim 편집기 사용자로부터 단일 명령을 실행하려면-
:!<command>
예를 들어, pwd 명령을 실행하려면 다음 구문을 사용하십시오.
:!pwd
그러나 여러 쉘 명령을 원하면 다음 명령을 실행하십시오-
:shell
위의 명령은 여러 명령을 실행할 수있는 터미널 액세스를 제공합니다. 작업을 마치면 exit 명령을 입력하면 Vim 세션으로 돌아갑니다.
ctag 및 cscope 구성
ctags와 csope의 조합은 함수 정의로 이동, 함수 선언으로 이동, 함수 호출 찾기, 파일 검색 등과 같은 많은 유용한 기능을 제공합니다. 이 도구를 구성하려면 아래 단계를 수행하십시오.
- 다음 명령을 사용하여 태그 생성-
$ ctags <file>
이 명령은 태그라는 새 파일을 생성합니다.
- 다음 명령을 사용하여 vim에 태그 파일 제공-
:set tags = tag
- 이제 커서를 함수 이름 아래로 이동하고 Ctrl +]를 눌러 함수 정의로 이동합니다.
- 사용하다 Ctrl + t 이전 위치로 돌아갑니다.
cscope를 설치하고 구성하려면 다음 단계를 수행하십시오.
- cscope 설치
$ sudo apt-get install cscope
- ctag 생성 및 메인 창 실행
$ cscope –R
- 사용자 Ctrl + d를 사용하여 cscope 창을 닫습니다.
자동 완성 및 자동 제안
자동 완성을 위해 다음 명령을 사용할 수 있습니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | Ctrl + x Ctrl + N 단어 완성 |
2 | Ctrl + x Ctrl + L 라인 완성 |
삼 | Ctrl + x Ctrl + F 파일 이름 완성 |
삽입 모드에서 이러한 명령을 사용해야합니다.
여러 번 우리는 원격 서버로 작업해야합니다. 그리고 종종 우리는 원격 서버에서 파일을 편집합니다. 이러한 파일을 편집하는 확실한 솔루션 중 하나는 원격 서버에 로그인하여 파일을 편집하는 것입니다. 그러나 때로는 로컬 시스템에 다양한 플러그인을 설치하고 구성했을 수 있으므로 로컬 시스템에서 해당 파일을 편집하는 것이 편리합니다. 이 장에서는 다음 항목에 대해 설명합니다.
- 원격 파일에 액세스
- netread 및 netwrite 이해
- 기타 지원되는 프로토콜
원격 파일 액세스
Vim은 다음 구문을 사용하여 원격 파일 편집을 지원합니다.
$vim scp://[email protected]/filepath
위의 예에서 vim은 scp 프로토콜을 사용해야 함을 인식하고 해당 프로토콜을 사용하여 파일에 액세스합니다. 예를 들어-
$ vim scp://[email protected]//tmp/message.txt
위의 명령은 원격 서버에서 /tmp/message.txt 파일을 엽니 다. 인증을 위해 SCP 프로토콜과 jarvis 사용자의 자격 증명을 사용합니다.
nread 및 nwrite 사용
Vim은 각각 net read 및 net write를 나타내는 nread 및 nwrite 기능을 지원합니다. 이전 섹션에서는 Vim을 실행하는 동안 원격 파일에 액세스하는 방법을 보여줍니다. 하지만 이미 Vim에 있다면 어떨까요? 그런 다음 다음 명령을 사용할 수 있습니다.
:Nread scp://jarvis@localhost//tmp/message.txt
읽기 외에도 원격 서버의 파일을 직접 수정할 수도 있습니다. 이 경우 다음과 같이 Nwrite 명령을 사용하십시오-
:Nwrite scp://jarvis@localhost//tmp/message.txt
파일이 열리면 일반 Vim 명령을 사용할 수 있습니다.
기타 지원되는 프로토콜
SCP 외에도 Vim은 다음 프로토콜을 지원합니다.
- FTP
- SFTP
- HTTP (읽기 전용)
- rsync
이제 우리는 Vim에 대해 공정한 아이디어를 얻었습니다. 생산성 향상을위한 Vim의 몇 가지 팁과 트릭에 대해 논의하겠습니다. 이 섹션에서는 다음 항목에 대해 설명합니다.
- 공백을 탭으로 또는 그 반대로 변환
- 철자가 틀린 단어 강조
- 단어 완성
- 문자별로 줄 복사
- 코드 들여 쓰기
- 파일 형식 변경
공백을 탭으로 또는 그 반대로 변환
탭을 공백으로 변환
파일을 편집하고 입력 한 탭 문자를 공백으로 변환하려면 다음 명령을 실행하십시오.
:set expandtab
이 명령은 기존 탭을 공백으로 변경하지 않습니다. 이를 달성하려면 다음 명령을 실행하십시오-
:set tabstop = 4 shiftwidth = 4 expandtab
:retab
위의 명령에서 Vim에게 탭을 4 개의 공백으로 변환하도록 지시합니다.
공백을 탭으로 변환
공백을 탭으로 변환하려면 아래 명령을 실행하십시오-
:set noexpandtab :retab!
철자가 틀린 단어 강조
Vim에게 철자가 틀린 단어를 강조하도록 지시 할 수 있습니다. 이를 수행하려면 다음 명령을 실행하십시오-
:set spell
아래 이미지는 Vim에서 철자가 틀린 단어를 강조합니다 −
단어 완성
Vim은 단어 완성 기능도 제공합니다. 이를 위해 삽입 모드에서 다음 명령을 실행하십시오-
Ctrl + p
줄 단위로 문자 복사
다음 명령을 사용하여 문자별로 줄 문자를 복사하고 붙여 넣으십시오.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | Ctrl + y 커서 위에있는 텍스트 복사 및 붙여 넣기 |
2 | Ctrl + e 커서 아래에있는 텍스트 복사 및 붙여 넣기 |
삽입 모드에서이 명령을 사용해야합니다.
코드 들여 쓰기
들여 쓰기 코드가 있다면 다음 명령을 실행하십시오-
=%
예를 들어, 다음과 같이 들여 쓰기되지 않은 코드가 있다면-
그런 다음 4 행으로 이동하여 = % 명령을 실행하십시오. 다음과 같은 코드를 들여 씁니다.
파일 형식 변경
파일 형식을 UNIX로 변경하려면 다음 명령을 실행하십시오-
:set ff = unix
파일 형식을 DOS로 변경하려면 다음 명령을 실행하십시오-
:set ff = dos
요구 사항에 따라 Vim을 개인화 할 수 있습니다. 이 섹션에서는 다음 항목에 대해 설명합니다.
- 구성 파일
- 글꼴 변경
- 색 구성표 변경
- 개인 강조
- 상태 라인
구성 파일
Vim의 경우 구성 파일은 사용자 수준 또는 전역 수준 일 수 있습니다. 사용자 별 설정은 사용자 수준 파일에 저장되고 전역 설정은 전역 수준 파일에 저장됩니다.
Vimrc 파일
Global vimrc
전역 vimrc 파일을 찾으려면 편집기에서 다음 명령을 실행하십시오.
:echo $VIM
또는
:echo \%VIM\%
Linux에서이 파일은 / usr / share / vim 디렉토리에 있으며 Window에서는 C : \ Program Files \ Vim 폴더에 있습니다.
Local vimrc
로컬 vimrc는 사용자의 홈 디렉토리에 있습니다. 예를 들어 Linux에서는 / home / <USER> 디렉터리에 있고 Windows에서는 C : \ Documents and Setting \ <USER> / 폴더에 있습니다.
Windows에서는 파일 이름이 _vimrc이고 Linux에서는 .vimrc입니다.
Gvimrc
Global gvimrc
Linux에서이 파일은 / usr / share / gvim 디렉토리에 있으며 Window에서는 C : \ Program Files \ Vim 폴더에 있습니다.
Local gvimrc
로컬 gvimrc는 사용자의 홈 디렉토리에 있습니다. 예를 들어 Linux에서는 / home / <USER> 디렉터리에 있고 Windows에서는 C : \ Documents and Setting \ <USER> / 폴더에 있습니다.
Windows에서는 파일 이름이 _gvimrc이고 Linux에서는 55 .gvimrc입니다.
exrc
exrc 파일은 이전 버전과의 호환성을 위해 사용됩니다. vimrc 또는 gvimrc 파일이있는 경우 이러한 파일은 무시됩니다.
Global exrc
Linux에서이 파일은 / usr / share / vim 디렉토리에 있으며 Window에서는 C : \ Program Files \ Vim 폴더에 있습니다.
Local exrc
로컬 exrc는 사용자의 홈 디렉토리에 있습니다. 예를 들어 Linux에서는 / home / <USER> 디렉터리에 있고 Windows에서는 C : \ Documents 및 Setting \ <USER> / _ exrc 폴더에 있습니다.
글꼴 변경
글꼴을 변경하려면 gVim에서 다음 명령을 실행하십시오-
:set guifont = courier
위의 명령은 글꼴을 택배로 변경합니다.
색상 변경
색 구성표를 변경하려면 다음 명령을 실행하십시오-
:colorscheme <tab>
탭 문자를 누르면 Vim에 사용할 수있는 색 구성표가 표시됩니다.
개인 강조
특정 열 뒤의 문자 강조
73보다 큰 열을 강조 표시하려면 아래 명령을 실행하십시오-
:match ErrorMsg /\%>73v.\+/
아래 이미지는 이것을 보여줍니다-
다음은이 명령에 대한 설명입니다.
Sr. 아니요 | 명령 및 설명 |
---|---|
1 | \%> 열 이후 일치 |
2 | 73 이것은 열 번호입니다. |
삼 | V 가상 열에서만 작동합니다. |
4 | .\+ 하나 이상의 문자와 일치 |
줄 번호 추가
줄 번호를 추가하려면 다음 명령을 실행하십시오-
:set number
이것을 비활성화하려면 다음 명령을 실행하십시오-
:set nonumber
숫자 너비 설정
숫자 너비를 설정하려면 다음 명령을 실행하십시오-
:set numberwidth = <num>
맞춤법 검사
맞춤법 검사를 활성화하려면 다음 명령을 실행하십시오-
:set spell
그리고 철자 언어를 설정하려면 다음 명령을 실행하십시오-
:set spelllang = <language>
예를 들어 comman 다음에 독일어 사용을 설정하려면-
:set spelllang = de
약어
약어를 사용하여 긴 문자열에 대한 바로 가기를 만들 수 있습니다. 예를 들어 아래 명령은 "quick"라는 약어를 만듭니다.
:abbr quick the quick brown fox
“quick”을 입력하고 탭을 누르면“the quick brown fox”문자열로 대체됩니다.
이를 사용하여 일부 오타를 수정할 수 있습니다. 예를 들어 아래 명령은 다음을 수행합니다.
:abr teh the
상태 라인
에디터 하단에 상태 표시 줄이 표시됩니다. 상태 줄을 활성화하려면 다음 명령을 실행하십시오-
:set laststatus = 2
현재 세션에서 이것을 제거하려면 다음 명령을 실행하십시오-
:set laststatus = 0
Vim은 정말 강력한 편집기이며 이제 손을 더럽힐 수 있습니다. Vim을 마스터하면 실제로 생산성이 향상됩니다. Vim을 사용하면 몇 가지 명령으로 많은 복잡한 작업을 해결할 수 있습니다. 다음 문서를 참조하여 Vim에 대해 자세히 알아볼 수 있습니다.
Vim 공식 문서
다음 웹 사이트에서 Vim의 공식 문서에 액세스 할 수 있습니다.
https://www.vim.org/
Vim 스크립팅 가이드
스크립트를 작성하여 vim을 더욱 향상시킬 수 있습니다. 자체 스크립팅 언어가 있습니다. 그것에 대해 더 알고 싶다면 다음 링크를 방문하십시오-
https://vim.sourceforge.io/scripts/index.php
Vim 플러그인
Vim 플러그인은 기능을 더욱 확장하고 생산성을 높여줍니다. Vim 용 플러그인을 설치, 구성 및 작성할 수 있습니다. 공식 웹 사이트에서 이에 관한 문서를 참조 할 수 있습니다.