사용자는 셸 환경 변수로 로켈 설정값을 변경할 수 있습니다. 각 범주는 기존 로켈에 이름을 부여합니다. setlocale() 함수를 사용하면 범주의 설정값을 직접 설정하거나 조회할 수 있습니다. 국제화된 함수는 이 설정값을 사용하여 원하는 로켈에 해당하는 테이블에 액세스합니다.
환경 변수를 통해 범주를 간접적으로 설정할 수 있습니다. setlocale()은 범주를 해당 위치에 대한 기본 설정값으로 설정할 때 각 환경 변수의 설정값을 사용하여 관련 범주를 설정합니다. setlocale() 함수는 환경 변수의 설정값을 변경하지 않고 읽기만 합니다.
다음 절차에 따라 시스템 전체에 적용되는 기본 로켈을 변경할 수 있습니다.
행을 추가하거나 변경하여 /etc/default/init 파일을 편집하십시오.
locale을 C, ko 또는 ko.UTF-8로 대체하십시오.
LANG=locale |
모든 사용자가 CDE를 종료하도록 하십시오.
다음 명령을 입력하십시오.
% su # /usr/dt/bin/dtconfig -kill |
다음 명령을 입력하십시오.
% su # reboot |
로켈과 범주는 다음과 같이 서로 관련되어 있습니다.
로켈에는 언어, 지역, 코드 세트 및 기타 기능에 대한 설정이 포함됩니다. 한국어 Solaris 운영 환경에는 다음과 같은 세 가지 로켈이 있습니다.
C—ASCII 영어 환경에서는 locale을 C로 설정해야 합니다.
ko—한국어 EUC 환경에서는 로켈을 ko로 설정해야 합니다.
ko.UTF-8—UTF-8의 한국어 환경에서는 로켈을 ko.UTF-8로 설정해야 합니다.
범주는 문자 표시 또는 시간/날짜 표시처럼 로켈에 따라 그 표시 형식이 달라지는 기능의 집합으로 로켈을 구성합니다. 한국어 Solaris에서 사용되는 범주는 다음과 같습니다.
LC_CTYPE은 분류와 변환에 사용되는 문자 유형을 설정합니다.
LC_TIME은 날짜 및 시간의 표시 방법을 설정합니다.
LC_NUMERIC은 숫자 표시 로켈을 설정합니다(입력과 출력에도 사용됩니다).
LC_MONETARY는 통화 표시 로켈을 설정합니다.
LC_MESSAGES는 메시지의 언어 로켈을 설정합니다.
LC_COLLATE는 로켈에 따라 결정되는 문자열의 조합을 설정합니다.
환경 변수 LC_ALL은 모든 범주에 같은 로켈을 설정합니다. 우선 순위가 가장 높습니다. 범주나 LC_ALL이 설정되어 있지 않으면 LANG 환경 변수가 범주 설정을 결정합니니다.
한국어 윈도우 시스템 입력 서버의 경우, 키 바인딩 프로세스는 키보드의 키를 응용프로그램의 특정 작업과 연결합니다. 예를 들어, 열려 있는 응용프로그램 창을 종료하는 것과 같은 복잡한 동작을 Ctrl-H 또는 Esc w c와 같은 단일 키나 일련의 키로 연결할 수 있습니다.
비 ASCII 입력 변환과 관련된 모든 입력 변환 모드 Ctrl 키 명령은 로켈 설정값에 따라 /usr/lib/mle/ko/keybind.dat 또는 /usr/lib/mle/ko.UTF-8/keybind.dat 중 하나에 설정됩니다. 기본 명령은 한국어 Solaris 사용 설명서의 4장, “한국어 입력”의 마지막 부분에 있는 표에 나와 있습니다.
keybind.dat에서 키 이름을 변경하고 htt 입력 서버를 재시작하면 키 바인딩을 변경할 수 있습니다. 다음과 같은 방법으로 사용자 정의 keybind.dat 파일을 생성하여 사용할 수 있습니다.
다른 디렉토리에서 keybind.dat라는 이름의 사용자 정의된 사본을 작성하십시오.
환경 변수 MLE_PATH를 사용자 정의 파일이 있는 디렉토리의 경로명으로 설정하십시오.
입력 서버를 시작하십시오.
MLE_PATH에 설정된 디렉토리에서 keybind.dat 파일이 검색되고 그 파일에 있는 명령이 사용자를 위해 설정됩니다.
MLE_PATH가 설정되어 있지 않거나 사용 가능한 keybind.dat 파일이 없으면 로켈에 따라서 /usr/lib/mle/ko/keybind.dat 또는 /usr/lib/mle/ko.UTF-8/keybind.dat가 사용됩니다.
키 바인딩을 변경하려면 키 바인딩 파일을 편집하여 기본 키를 새 키로 변경하십시오. 키 조합과 ON/OFF 전환도 사용할 수 있습니다.
C 셸 수준에서 다음과 같은 셸 명령으로 각 환경 변수를 locale(한국어의 경우 ko 또는 ko.UTF-8, ASCII의 경우 C)로 설정할 수 있습니다.
C 셸 사용자는 다음과 같은 셸 명령을 입력할 수 있습니다.
system% setenv LC_TIME locale |
본 셸(sh) 사용자는 set 또는 export를 사용할 수 있습니다.
$ set -a LC_TIME $ LC_TIME=locale |
또는
$ LC_TIME=locale $ export LC_TIME |
로켈을 ko 또는 ko.UTF-8로 설정하면 사용자의 환경에서 시간을 한국어 형식과 텍스트로 표시할 수 있습니다. 사용자는 작업 환경에 맞게 혼합 로켈을 정의할 수 있습니다. 예를 들어, 문자는 한국어로 입력하고 변환하며 시간은 프랑스어 형식으로 표시하고 메시지는 영어로 표시할 수 있습니다.
대부분의 사용자들은 단일 문화 환경에서 작업합니다. LC_ALL과 LANG 환경 변수는 모든 범주에 대한 시스템 기본값을 설정합니다. 예를 들어, 이 두 가지 C 셸 명령은 모든 범주의 시스템 기본값을 locale로 설정합니다.
system% setenv LC_ALL locale system% setenv LANG locale |
시스템 관리자나 사용자는 기본값을 설정할 수 있으며, setenv 구문을 프로그래밍에 사용할 수 있습니다.
이 설정값은 응용프로그램에서 다음 번 setlocale() 함수 호출이 범주를 다음 기본 설정값으로 설정할 때 적용됩니다. setlocale( LC_XXX, "")