사용자는 쉘 환경 변수로 로켈 설정값을 변경할 수 있습니다. 각 범주는 기존 로켈에 이름을 부여합니다. setlocale() 함수를 사용하면 범주의 설정값을 직접 설정하거나 조회할 수 있습니다. 국제화된 함수는 이 설정값을 사용하여 원하는 로켈에 해당하는 테이블에 액세스합니다.
환경 변수를 통해 범주를 간접적으로 설정할 수 있습니다. setlocale()은 범주를 해당 위치에 대한 기본 설정값으로 설정할 때 각 환경 변수의 설정값을 사용하여 관련 범주를 설정합니다. setlocale() 함수는 환경 변수의 설정값을 변경하지 않고 읽기만 합니다.
다음 절차에 따라 시스템 전체에 적용되는 기본 로켈을 변경할 수 있습니다. OpenWindows 사용자의 경우에는 ko.UTF-8의 기본 설정값이 C 로켈로 변경됩니다.
행을 추가하거나 변경하여 /etc/default/init 파일을 편집하십시오.
locale을 C, ko 또는 ko.UTF-8로 대체하십시오.
LANG=locale |
모든 사용자가 CDE를 종료하도록 하십시오.
다음 명령을 입력하십시오.
% su # /usr/dt/bin/dtconfig -kill |
다음 명령을 입력하십시오.
% su # reboot |
로켈과 범주는 다음과 같이 서로 관련되어 있습니다.
로켈에는 언어, 지역, 코드 세트 및 기타 기능에 대한 설정이 포함됩니다. 한국어 Solaris 운영 환경에는 다음과 같은 세 가지 로켈이 있습니다.
C-ASCII 영어 환경에서는 로켈을 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 |
Bourne 쉘(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 "")로 설정할 때 적용됩니다.