일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- deeplearning
- computer
- Ai
- nlp
- Standford
- review
- cs231n
- paper_review
- Statistics
- computer_setting
- code
- text
- json
- language_model
- linux
- git
- seq2seq
- github
- pip
- tab
- error
- Vim
- terminal
- gensim
- Stanford
- natural_language_processing
- slideshare
- machinelearning
- install
- cs224n
- Today
- Total
NLP/AI/Statistics
vim에서 tab이 공백으로 처리되는 경우 본문
vim에서 간혹 아래와 같은 에러가 발생한다.

이 TabError는 보통 tab과 공백을 혼동해서 사용했을 때 발생하는 에러이다.
하지만 분명 tab으로만 사용했는데도 이런 에러가 발생할 때가 있다.
이는 분명 tab을 사용했지만 알고보니 이 tab이 공백으로 처리되는 경우였다.
tab을 사용한 후 화살표 조작 키보드를 사용하여 옆으로 움직여보면 8개의 공백처럼 처리되어 있었다.
이는 tab을 공백으로 처리하겠다는 명령어에 의해 작동된다.
$ vim .vimrc
터미널에서 위와 같은 코드를 작업하면 vim 설정을 볼 수 있다.
기존의 vimrc는 아래와 같이 작성되어 있었다.

여기에서 문제는 바로 "set expandtab"
이 부분이 tab을 공백으로 처리하겠다는 명령이기 때문에 tab을 공백으로 처리했던 것이다.
해당 부분을 삭제하고 아래와 같이 해당 파일을 실행시키면 된다.
$ source .vimrc
tab을 공백으로 처리하지 않도록 설정하여 문제를 해결하였다.
이외에도 다음과 같은 설정 방법들이 있다.
> retab
: 현재 있는 tab들을 공백으로 전환 (사실 위의 문제를 이 코드로 해결할 수도 있다.)
> set shiftwidth = 8
: >와 < 방향키로 tab 전환을 변경 (전환 기준을 공백 8개로 취급한다.)
> set tabstop = 8
: 공백 8개를 한 번의 들여쓰기로 취급 (즉, 공백 8개가 tab 한번과 동일한 역할을 한다.)
> set expandtab
: tab을 공백으로 처리
(위의 문제에서는 tab을 공백으로 처리하지 않기 위해 이 부분을 삭제하였다.)
'Computer Setting > Linux & Vim' 카테고리의 다른 글
terminal에서 여러 텍스트 파일 합치기 (0) | 2021.07.13 |
---|---|
tar.gz 압축하기 및 압축해제 (0) | 2021.06.15 |
Ubuntu 화면 영상 녹화 (0) | 2021.06.08 |
Vim에서 Tab 크기 조절 (0) | 2021.05.18 |
Linux disk 남은 용량 확인 (0) | 2021.03.31 |