목차
1. vim 소개
앞서 안드로이드 스마트폰이나 태블릿에서 termux를 이용해 파이썬 코딩이 가능하다는 것을 소개하였다.
termux를 이용해 스마트폰에서 파이썬과 주피터노트북 사용하기
termux에서 코딩을 할 때 사용할 수 있는 에디터는 다양한데, 그중 vim이 가장 대중적으로 쓰이는 것 같다.
vim은 linux 환경에서 사용되는 대표적인 텍스트 에디터라고 하는데, termux를 설치하면 따로 vim을 설치하지 않아도 사용할 수 있다.
vim 외에 nano 에디터도 기본적으로 설치가 되어 있는데, 둘 다 인기가 있는 에디터이지만, vim쪽이 익숙해지기만 하면 더 편리하고 효율적으로 편집을 할 수 있어 더 많이 쓰인다고 한다.
그런데 vim과 nano를 커맨드라인에 입력해 에디터를 열어 보면, 기본적인 조작법이 화면에 항상 표시되는 nano와 달리 vim은 도무지 어떻게 쓰는 건지 알기가 어려워서 nano 쪽을 먼저 써보게 된다.
그러나 vim은 2~3개 단축키만 알아도 nano에서 하듯이 쉽게 편집을 시작할 수가 있고, 단축키를 알면 알수록 작업 효율이 높아진다.
여기에서는 가장 기초적인 수준의 사용법을 소개한다.
2. vim의 기본적인 사용법 소개
입력 모드 전환(i ↔ ESC)
아마 vim 에디터를 열었을 때 텍스트 입력이 안된다는 점이 가장 당황스러울 것이다.
vim에는 "모드"라는 개념이 있는데, 텍스트를 입력하려면 입력 모드로 전환해야 한다.
i를 누르면 좌측 하단에 아래와 같이 INSERT라는 표시가 생기면서 텍스트 입력이 가능해진다.
편집을 마치고 저장을 하려면 먼저 입력 모드에서 빠져나와야 한다. ESC를 누르면 위에서 나타난 INSERT 표시가 사라진다.
저장 및 에디터 종료(:w, :q, :wq, :q!)
편집한 내용을 저장하려면 :(콜론)을 누르고, w를 입력한다. w는 WRITE의 약자로 보인다.
에디터를 종료하려면 역시 :(콜론)을 누르고, q를 입력한다. q는 QUIT의 약자로 보인다.
이때 편집한 내용을 저장하지 않았다면 에러가 뜬다.
저장을 안 하고 종료하고 싶으면 q 뒤에 느낌표를 붙여준다.
편집한 내용을 저장하고 종료하려면 :(콜론)을 누르고, wq를 입력한다.
자, 여기까지만 배우면 일단 vim 에디터에서도 코드 작성이 가능해졌다.
글자, 단어, 줄 지우기(x, dw, d$, dd)
입력 모드에서는 일반적인 편집 방법과 동일하게 백스페이스나 delete 키를 이용해 글자를 지울 수 있다.
vim은 입력 모드가 아닌 상태에서 여러 가지 방법으로 텍스트를 지울 수가 있다.
x를 누르면 현재 커서 위치의 1글자를 지운다.
dw를 누르면 1개 단어를 지우는데, 현재 커서 위치에서 뒤쪽으로만 지운다. 예를 들어 delete에서 l에 커서를 두고 dw를 누르면 lete만 지운다.
d$를 누르면 현재 커서 위치에서 뒤쪽으로 줄 끝까지 지운다.
dd를 누르면 현재 커서가 위치한 줄을 모두 지운다.
붙여넣기(p)
p를 누르면 위의 단축키들로 잘라낸 내용을 붙여넣는다.
되돌리기, 다시실행(u, U, ctrl r)
u를 누르면 직전에 편집한 내용을 되돌릴 수 있다.
ctrl r을 누르면 되돌린 내용을 다시실행한다.
U(대문자)를 누르면 해당 라인에서 편집한 내용을 모두 되돌린다.
탐색(G, gg, /, ?, ctrl o)
G를 누르면 문서의 끝으로 이동한다.
gg를 누르면 문서의 시작으로 이동한다.
아래쪽으로 검색하려면 /를 누르고 검색어를 입력한다.
위쪽으로 검색하려면 ?를 누르고 검색어를 입력한다.
직전 위치로 돌아가려면 ctrl o를 누른다.
'코딩 > Linux, Termux' 카테고리의 다른 글
리눅스 부팅 USB에 파이썬 데이터 분석 환경 세팅하기/VS Code, Anaconda, Jupyter notebook, etc. (0) | 2022.03.07 |
---|---|
리눅스 부팅 USB를 만들어 내 개발환경 휴대하고 다니기/rufus, 리눅스민트 (1) | 2022.03.06 |
termux에서 위젯으로 파이썬 스크립트를 실행하는 방법 (0) | 2022.01.29 |
파이썬과 termux를 이용해 스마트폰 컨트롤하기(문자 전송, 전화 걸기, 녹음하기, 알림 보내기 등)/termux-api (0) | 2021.12.23 |
termux에서 pip install이 잘 안될 때 (0) | 2021.12.14 |
댓글