우당탕탕 개발일기
[VSCode] Delete `␍`eslint 해결 방법(feat. CRLF와 LF) 본문
728x90
맥북에서 시작한 프로젝트를 윈도우에서 이어받아 하려고 하는데 코드에 갑자기 요상한 빨간 밑줄이, 그것도 엄청 많이 생겼다.
찾아보니 운영체제에 따라 Carriage Return이 달라 발생하는 문제여서 한 쪽으로 맞춰줘야한다고 한다.
1. CRLF (Carriage Return + Line Feed)
- 표현 방식: \r\n (CR + LF)
- CR: Carriage Return. 커서를 가장 왼쪽으로 이동.
- LF: Line Feed. 다음 줄로 이동.
- 사용 운영 체제: Windows.
2. LF (Line Feed)
- 표현 방식: \n (LF만 사용)
- LF: 다음 줄로 이동.
- 사용 운영 체제: Unix 계열 (macOS, Linux).
윈도우는 과거 도트 매트릭스 프린터에서 사용하던 CR(줄의 시작)과 LF(다음 줄로 이동)을 유지하고 있어서 CRLF 방식을 사용하고 있고, 현대적인 환경의 Unix, Linux, macOS는 간단한 LF 방식을 사용하고 있다고 한다.
즉, 윈도우에서 사용하는 CRLF는 다음 줄로 이동하는 것뿐만 아니라 커서를 가장 왼쪽으로 이동 시킨다는 것이고,
맥에서는 다음 줄로 이동만 시킨다는 것이다.
그래서 나처럼 맥 → 윈도우 개발 뿐만 아니라, 맥 ← 윈도우 개발일 경우도 줄 바꿈이 되지 않는 이슈가 발생할 수 있다고 한다.
업무용 코드를 작업할 땐 다 세팅된 환경이라 미처 몰랐던 사실이었다..!
해결 방법.
물론 코드 에디터의 우측 하단에서 전환할 수 있지만 커밋할 때마다 초기화 되고 엄청엄청 번거롭다!
좀 더 본질적인 문제 해결 방법은 eslint 파일을 수정하는 것이었다!
나의 프로젝트는 .eslintrc 파일이 아니라 .eslint.config.js 파일로 세팅하고 있었기 때문에 해당 파일에 rules를 추가해주었다.
만약 .eslintrc 파일을 사용한다면 해당 파일에 추가하면 됨!
진작 이렇게 할 걸.. 이젠 맘놓고 작업을 이어할 수 있게 되었다! ㅎㅎ
728x90
'What I Learned > etc.' 카테고리의 다른 글
[리눅스/puTTY] 리눅스에서 파일 복사 붙여넣기 (0) | 2025.01.14 |
---|---|
ESLint 설정 가능한 규칙들 (0) | 2023.09.18 |
npm run dev 에러도 없고, 실행도 되지 않을 때 (0) | 2023.09.12 |
input/text-area 아닌 태그에서 커서 깜빡임 (0) | 2023.04.21 |
[Eslint] import 자동 정렬은 Eslint로! (0) | 2023.02.16 |