국제 언어 환경 설명서

시스템 환경

이 절은 로켈 환경 변수, TTY 환경 설치, 32비트 및 64비트 STREAMS 모듈, 단말기 지원을 설명합니다

로켈 환경 변수

시스템에 en_US.UTF-8 로켈이 설치되어 있는지 확인하십시오. 다양한 범주의 현재 로켈 설정을 확인하려면 locale 유틸리티를 사용합니다.

system% locale 
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_ALL=

en_US.UTF-8 로켈 데스크탑 환경을 사용하려면 먼저 로켈을 선택하십시오. TTY 환경에서는 먼저 다음 C-셸 예와 같이 LANG 환경 변수를 en_US.UTF-8로 설정하여 로켈을 선택합니다.

system% setenv LANG en_US.UTF-8

LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_NUMERIC, LC_MONETARY, 및 LC_TIME 범주가 설정되지 않았거나 en_US.UTF-8로 설정되었는지 확인합니다. 범주가 설정되면 보다 낮은 우선 순위의 LANG 환경 변수를 무시합니다. 환경 변수 계층에 대한 자세한 내용은setlocale(3C) 매뉴얼 페이지를 참조하십시오.

CDE 데스크탑에서 en_US.UTF-8 환경을 시작할 수도 있습니다. CDE 로그인 화면의 옵션 -> 언어 메뉴에서, en_US.UTF-8를 선택하십시오.

TTY 환경 설정

사용하는 단말기 및 단말기 에뮬레이터에 따라 특정한 코드 세트 특정 STREAMS 모듈을 스트림으로 푸시해야할 수 있습니다.

STREAMS 모듈 및 일반적인 스트림에 대한 자세한 내용은 STREAMS Programming Guide를 참조하십시오.

다음 표는 단말기 환경의 en_US.UTF-8 로켈이 지원하는 64비트 STREAMS 모듈을 나열합니다. 자세한 내용은 Solaris 64–bit Developer's Guide를 참조하십시오.

표 5–12 en_US.UTF-8이 지원하는 STREAMS 모듈

32비트 STREAMS 모듈 

설명 

/usr/kernel/strmod/sparcv9/u8lat1

UTF-8ISO8859-1(서부 유럽어) 사이의 코드 변환 STREAMS 모듈

/usr/kernel/strmod/sparcv9/u8lat2

UTF-8ISO8859-2(동부 유럽어) 사이의 코드 변환 STREAMS 모듈

/usr/kernel/strmod/sparcv9/u8koi8

UTF-8KOI8-R(키릴 문자) 사이의 코드 변환 STREAMS 모듈


주 –

Solaris 10 릴리스부터 32비트 커널은 SPARC sun4u 플랫폼에서 더 이상 지원되지 않습니다. 표 5–12는 x86 플랫폼에 대한 32비트 커널에만 적용됩니다. 자세한 내용은 릴리스 노트를 참조하십시오.


다음 표는 en_US.UTF-8이 지원하는 64비트 STREAMS 모듈을 나열합니다.

표 5–13 en_US.UTF-8이 지원하는 64비트 STREAMS 모듈

64비트 STREAMS 모듈 

설명 

/usr/kernel/strmod/sparcv9/u8lat1

UTF-8ISO8859-1(서부 유럽어) 사이의 코드 변환 STREAMS 모듈

/usr/kernel/strmod/sparcv9/u8lat2

UTF-8ISO8859-2(동부 유럽어) 사이의 코드 변환 STREAMS 모듈

/usr/kernel/strmod/sparcv9/u8koi8

UTF-8KOI8-R(키릴 문자) 사이의 코드 변환 STREAMS 모듈

STREAMS 커널 모듈을 로드하는 방법
  1. 루트 사용자로 64비트 Solaris 시스템을 실행하는지 32비트 시스템을 실행하는지 결정합니다.

    system# isainfo -v
    
    • 64비트 Solaris 시스템은 다음 정보를 반환합니다.

      64-bit sparcv9 applications
      32-bit sparc applications
    • 32비트 Solaris 시스템은 다음 정보를 반환합니다.

      32-bit sparc applications
    • 32비트 x86 시스템은 다음 정보를 반환합니다.

      32-bit i386 applications
  2. 시스템이 이미 STREAMS 모듈에 있는지 결정합니다..

    system# modinfo | grep modulename
    

    u8lat1과 같은 STREAMS 모듈이 이미 설치되었으면 출력은 다음과 같습니다.

    system# modinfo | grep u8lat1
    89 ff798000  4b13  18   1  u8lat1 (UTF-8 <--> ISO 8859-1 module)
  3. 모듈이 아직 로드되지 않았으면 modload(1M) 명령을 사용하여 로드하십시오.

    • 32비트 시스템에서 다음을 입력합니다.

      system# modload /usr/kernel/strmod/u8lat1
      
    • 64비트 시스템에서 다음을 입력합니다.

      system# modload /usr/kernel/strmod/sparcv9/u8lat1
      

      적절한 u8lat1 STREAMS 모듈이 커널에 로드됩니다. 이제 스트림으로 푸시할 수 있습니다.

STREAMS 커널 모듈을 로드 해제하는 방법
  1. 루트로 커널 모듈이 로드되었는지 확인합니다.

    예를 들어, u8lat1이 로드되었는지 확인하려면 다음을 입력합니다.

    system# modinfo | grep u8lat1
    89 ff798000  4b13  18   1  u8lat1 (UTF-8 <--> ISO 8859-1 module)
  2. 커널을 로드 해제하려면 modunload(1M) 명령을 사용합니다.

    u8lat1 모듈을 로드 해제하려면 다음을 입력합니다.

    system# modunload -i 89
    
라틴-2 단말기 및 STREAMS 모듈을 설정하는 방법
  1. 두번째 명령줄에서 보이듯이strchg(1M)를 사용합니다.

    system% cat > tmp/mystreams 
    ttcompat
    ldterm
    u8lat1
    ptem
    ^D
    system% strchg -f /tmp/mystreams
    

    strchg(1)를 사용할 때 장치의 루트 또는 소유자인지 확인하십시오.

  2. 현재 구성을 조사하려면 stconf 명령을 실행합니다.

    system% strconf
    ttcompat
    ldterm
    u8lat1
    ptem
    pts
    system%
  3. 원래 구성을 재설정하려면 strchg 명령을 실행합니다.

    system% cat > /tmp/orgstreams
    ttcompat
    ldterm
    ptem
    ^D
    system% strchg -f /tmp/orgstreams
    

dtterm, xterm 및 UTF-8 문자의 입출력이 가능한 단말기

Solaris Operating System 이전 버전과 달리 UTF-8 코드 세트의 입출력을 지원하는 dttermxterm 단말기 에뮬레이터 및 기타 단말기는 스트림에 추가 STREAMS 모듈이 있을 필요가 없습니다. ldterm 모듈는 이제 코드 독립적이고 stty(1) 유틸리티로 단말기 환경을 설정하는 경우 유니코드/UTF-8을 지원합니다.

유니코드 로켈의 적합한 단말기 환경을 설정하려면 stty(1) 유틸리티를 사용하십시오.

system% /bin/stty defeucw

현재 설정을 질의하려면 다음과 같이 stty 유틸리티의 -a 옵션을 사용합니다.

system% /bin/stty -a

주 –

/usr/ucb/stty는 국제화되지 않았기 때문에 대신 /bin/stty를 사용하십시오.


라틴-1, 라틴-2 또는 KOI8-R에 대한 단말기 지원

라틴-1 (ISO8859-1), 라틴-2 (ISO8859-2) 또는 KOI8-R만 지원하는 단말기의 경우 다음 STREAMS 구성이 있어야 합니다.

head <-> ttcompat <->  ldterm <->  u8lat1 <-> TTY

이 구성은 라틴-1을 지원하는 단말기에만 해당됩니다. 라틴-2 단말기의 경우 STREAMS 모듈 u8lat1u8lat2로 교체합니다. KOI8-R 단말기에 대하여 모듈을 u8koi8로 바꾸십시오.

커널로 이미 STREAMS 모듈을 로드했는지 확인하십시오.

~/.cshrc에 설정 저장하기

필요한 STREAMS 모듈이 커널과 함께 로드되었다고 가정하면 편의를 위해.cshrc 파일(C 셸 예제)에 다음 행을 저장할 수 있습니다.

setenv LANG en_US.UTF-8
if ($?USER != 0 && $?prompt != 0) then
     cat >! /tmp/mystreams$$ << _EOF
     ttcompat
     ldtterm
     u8lat1
     ptem
_EOF
     /bin/strchg -f /tmp/mystreams$$
     /bin/rm -f /tmp/mystreams$$
     /bin/stty cs8 -istrip defeucw
endif

이러한 행이 .cshrc 파일에 있으면 STREAMS 모듈을 사용할 때마다 모든 명령을 입력할 필요가 없습니다. 두번째 _EOF가 파일의 첫번째 열에서 시작해야 함을 주의하십시오.