PostgreSQL 8.0.0 �����ĵ���PostgreSQL �й� ������ | ||||
---|---|---|---|---|
Prev | Fast Backward | Chapter 44. ��������֧�� | Fast Forward | Next |
�����������������PostgreSQL �汾�ij�����߿�����֧�ֱ������ԡ� Ŀǰ��ֻ������ C ���ԣ�
����������� NLS ֧��
������Ĵ�����뵽����Ŀ�ͷ��
#ifdef ENABLE_NLS #include <locale.h> #endif ... #ifdef ENABLE_NLS setlocale(LC_ALL, ""); bindtextdomain("progname", LOCALEDIR); textdomain("progname"); #endif
������� progname ʵ���Ͽ�������ѡ��
�������һ����Ҫ�������Ϣ����ô����Ҫ����һ���� gettext() �ĵ��á�����
fprintf(stderr, "panic level %d\n", lvl);
��ij�
fprintf(stderr, gettext("panic level %d\n"), lvl);
�����û������ NLS����ôgettext �ᶨ���һ����������
��ô�ɻ����һ�Ѷ�����һ�ֳ��õ���д��
#define _(x) gettext((x))
�������ͨ��һ���������������������˴�����ͨѶ�� ��������� elog()�� ��ôҲ����������һ��������Ȼ��������Щ��������������ֵ���ڲ����� gettext��
�ڴ�����Դ�����Ŀ¼���һ���ļ� nls.mk�� ����ļ��������� makefile ��ȡ����������Ҫ������һЩ������ ��ֵ��
��������֣�������Щ�� textdomain() �������ṩ�ġ�
�ṩ�ķ���������б� — ��ʼ��ʱ���ǿյġ�
һ�а����ɷ����ִ����ļ���Ҳ������Щ�� gettext ����������Ӧ�ֶα���˵��ļ������գ����������������еij���Դ�ļ��� ����б�̫��������ѵ�һ��"�ļ�"д��һ�� +�͵ڶ�������ɣ��ڶ�������һ���ļ���������ļ���ÿ�а���һ���ļ�����
���ɸ�������ʹ�õ���Ϣ��Ĺ��ߣ��Ա�֪����Щ�������ð����ɷ����ִ��� ȱʡʱֻ֪�� gettext() ���á� �����ʹ���� _ ��������ʶ������ô����Ҫ������������� ����ɷ����ִ����ǵ�һ����������ô������Ҫ���������ʽ�� func:2�����ڵڶ�����������
����ϵͳ���Զ����������Ͱ�װ��Ϣ��
������һЩ�����д��Ϣ�Ϳ��Լ���Ϣ���뷽���ָ����
��Ҫ͵��������ʱ������䣬������
printf("Files where %s.\n", flag ? "copied" : "removed");
����������ĵ���˳������������Ժ��ѷ��롣 ���ң���ʹ��ǵ���ÿ��Ƭ���ϵ��� gettext()�� ��ЩƬ��Ҳ��һ���ܺܺõض������롣 ��������ظ�һЩ���룬����ÿ����Ϣ���Ե����л���������з��롣 ֻ�����֣��ļ��������Ƶ�����ʱ������Ӧ��������ʱ������Ϣ�ı���
�������Ƶ�ԭ������Ķ��������á�
printf("copied %d file%s", n, n!=1 ? "s" : "");
��Ϊ������������Ҹ���������㿴�������Ķ���������������淽�����
if (n==1) printf("copied 1 file"); else printf("copied %d files", n):
��������������ʧ����ʱ����Щ������ijЩ����������г���������ʽ�� ���ǿ����ڽ������������⣬���Ǿ�Ŀǰ���ԣ�������û�����ȫ ������Щ���������������д��
printf("number of copied files: %d", n);
�������ͷ����߽��н���������˵һ����Ϣ������������������ģ���ô�ڸ��ִ�����֮ǰ�� ����һ���� translator ��ͷ��ע�ͣ�����
/* translator: This message is not what it seems to be. */
��Щע�Ͷ���������Ϣ���ļ�����������߾Ϳ��Կ��������ˣ�