Unix/Linux/Mac,  컴퓨터와 인터넷

tcsh에서 한글 입출력하기

요즘은 tcsh port에 한글 설정이 기본적으로 켜져 있어서(#define KANJI) 컴파일할 때, 사용자가 수정해야 할 사항은 없다.
ftp://ftp.astron.com/pub/tcsh

다만, .cshrc에 환경 변수의 설정을 시스템의 로케일과 동일하게 맞춰줄 필요가 있다. 그렇지 않으면 shell에서 한글 입력이 제대로 동작하지 않는 문제점이 나타난다.

[mango]~> locale -a|grep -i euckr
ko_KR.eucKR —> 이 값을 사용한다.

euc-kr 로케일을 가리키는 로케일 이름은 시스템마다 다를 수 있으니 locale -a로 확인하는 것이 필요하다.

[mango]~> setenv LC_ALL ko_KR.eucKR
[mango]~> setenv LANG ko_KR.eucKR

LANG 변수는 다른 로케일 관련 환경 변수와 다른 동작 패턴을 가지고 있어서 LC_ALL을 설정하더라도 변하지 않을 수 있다. 그러므로 LANG 변수는 따로 설정해줘야 한다.

[mango]~> 한글 —> 이렇게 입력이 제대로 되는지 확인

* shell 환경과 상관없이 터미널 설정이 8비트를 지원하지 않을 때, 한글 입출력에 문제가 생길 수 있다. 이런 경우, stty를 이용하여 설정해줄 필요가 있다.

[mango]~> stty -a|grep cs8
-parenb -parodd cs8 -cstopb hupcl cread -clocal -loblk -crts —> cs8이 나와야 함
[grape]~> stty -a|grep istrip
-ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -iuclc

cs8과 -istrip으로 설정되어 있지 않으면

[mango]~> stty -istrip cs8

답글 남기기