Window 환경에서 Elixir 인코딩 문제

DongHwan·2022년 2월 13일
0

Elixir

목록 보기
2/4
post-thumbnail

Window 환경에서 cmd, powershell, git bash와 같은 터미널을 사용하여 elixir를 사용할 때, 한글이 정상적으로 인코딩되지 않는 문제가 있다.

git bash에서 iex를 실행한 뒤, 한글 문자열을 입력하였다. 보이는 것처럼 유효한 인코딩이 아니라고 뜨며, 정상 동작하지 않는다.

iex 프로그램을 직접 띄워, 한글 문자열을 입력할 시 정상 동작하는 것을 알 수 있다. 윈도우 환경의 터미널들의 입/출력 문제일 가능성이 크다.

실제로 git bash의 인코딩 방식을 UTF-8로 설정해주면, 제대로 동작하는 것을 알 수 있다.
다만... vscode에서 git bash 터미널을 띄울 경우에는 여전히 해결되지 않는다...

// phoenix controller 코드

Logger.info("한글 로그 입니다.")
IO.puts("한글 IO puts입니다.")

이 문제는 출력에서도 나타나는데, 위 코드처럼 Logger나 IO를 사용하여 출력을 할 경우 사진에서 나오듯 인코딩이 깨지는 것을 알 수 있다.

다만 이는 터미널 상에서의 문제일 뿐이고, 위 사진처럼 파일에 저장할 시 정상적인 인코딩이 적용된 것을 알 수 있다.

해결법?

결국에 이를 해결하려면...

  1. 사용하는 터미널 프로그램의 인코딩 설정을 utf-8로 설정한다.
  2. vscode를 사용하는 경우, 로그를 파일에 저장하거나 iex 프로그램을 띄워 사용한다.

이렇게 두가지로 나눌 수 있을 것 같다... 아니면 그냥 맥을 쓰던가...

마지막으로 검색해서 나온 결과론 링크1링크2에서처럼 그냥 iex 프로그램을 직접 띄워쓰는걸 추천하는 듯 하다.

profile
날 어떻게 한줄로 소개해~

0개의 댓글