gettext는 말그대로 text를 get하는 utility/function 이다.
어떤 용도로 사용하냐면은, 다국어지원등의 용도로 사용된다.

메시지들은 msgid를 통해 불러 오게되고,
gettext를 통해 받아온 메시지는, 현재 system의 언어설정에 따라 맞는 언어를 가져 온다.

#include <libintl.h>
#include <locale.h>
#include <stdio.h>

int main(void)
{
        /* 현재 호스트의 locale 을 사용한다. */
        setlocale(LC_ALL,"");
        /* Hello 의 message table 을 /usr/local/share/locale 아래에서 찾도록 한다. */
        bindtextdomain("Hello", "/usr/local/share/locale");

        textdomain("Hello");
   
        printf("original message : %s\n", "Greeting");
        printf("gettext trans  : %s\n", gettext("Greeting"));

        printf("original message : %s\n", "Hello");
        printf("gettext trans  : %s\n", gettext("Hello"));

        printf("original message : %s\n", "World!");
        printf("gettext trans  : %s\n", gettext("World!"));

       return 0;
}

아무튼, 리눅스나, 윈도우 상에서 이러한 po파일을 수정하고 만드는 건 꽤나 번거로운 작업이지만,
다국어 작업을 해야한다면 꽤 괜찮은 방법이라고 생각된다.



[링크 : http://wiki.kldp.org/wiki.php/DocbookSgml/Gettext-KLDP] Howto Document
[공식 : http://www.gnu.org/software/gettext/] GNU gettext official
[Poedit : http://www.poedit.net/] GUI Po Editor

'프로그램 사용 > poEdit' 카테고리의 다른 글

poEdit의 TM을 이용한 자동번역  (0) 2011.12.23
poedit - Translate memory 도움말 번역  (0) 2011.12.21
L10N / I18N  (0) 2009.04.08
Poedit - crossplatform gettext catalogs editor  (0) 2009.02.26
Posted by 구차니