


XSupportsLocale(3X11)					XSupportsLocale(3X11)
X11R5									X11R5



NAME
  XSupportsLocale, XSetLocaleModifiers - determine locale support and config-
  ure locale modifiers

SYNTAX
  Bool XSupportsLocale()

  char *XSetLocaleModifiers(_m_o_d_i_f_i_e_r__l_i_s_t)
	char *_m_o_d_i_f_i_e_r__l_i_s_t;

ARGUMENTS

  _m_o_d_i_f_i_e_r__l_i_s_t
	    Specifies the modifiers.

DESCRIPTION
  The _X_S_u_p_p_o_r_t_s_L_o_c_a_l_e function returns _T_r_u_e if Xlib functions are capable of
  operating under the current locale.  If it returns _F_a_l_s_e, Xlib locale-
  dependent functions for which	the _X_L_o_c_a_l_e_N_o_t_S_u_p_p_o_r_t_e_d	return status is
  defined will return _X_L_o_c_a_l_e_N_o_t_S_u_p_p_o_r_t_e_d.  Other Xlib locale-dependent	rou-
  tines	will operate in	the ``C'' locale.

  _X_S_e_t_L_o_c_a_l_e_M_o_d_i_f_i_e_r_s sets the X modifiers for the current locale setting.
  The modifier_list argument is	a null-terminated string of the	form
  ``{@_c_a_t_e_g_o_r_y=_v_a_l_u_e}'', that is, having zero or more concatenated
  ``@_c_a_t_e_g_o_r_y=_v_a_l_u_e'' entries where _c_a_t_e_g_o_r_y is	a category name	and _v_a_l_u_e is
  the (possibly	empty) setting for that	category.  The values are encoded in
  the current locale.  Category	names are restricted to	the POSIX Portable
  Filename Character Set.

  The local host X locale modifiers announcer (on POSIX-compliant systems,
  the XMODIFIERS environment variable) is appended to the modifier_list	to
  provide default values on the	local host.  If	a given	category appears more
  than once in the list, the first setting in the list is used.	 If a given
  category is not included in the full modifier	list, the category is set to
  an implementation-dependent default for the current locale.  An empty	value
  for a	category explicitly specifies the implementation-dependent default.

  If the function is successful, it returns a pointer to a string.  The	con-
  tents	of the string are such that a subsequent call with that	string (in
  the same locale) will	restore	the modifiers to the same settings.  If
  modifier_list	is a NULL pointer, _X_S_e_t_L_o_c_a_l_e_M_o_d_i_f_i_e_r_s also returns a pointer
  to such a string, and	the current locale modifiers are not changed.

  If invalid values are	given for one or more modifier categories supported
  by the locale, a NULL	pointer	is returned, and none of the current modif-
  iers are changed.

  At program startup the modifiers that	are in effect are unspecified until
  the first successful call to set them.  Whenever the locale is changed, the
  modifiers that are in	effect become unspecified until	the next successful
  call to set them.  Clients should always call	_X_S_e_t_L_o_c_a_l_e_M_o_d_i_f_i_e_r_s with a
  non-NULL modifier_list after setting the locale, before they call any
  locale-dependent Xlib	routine.

  The only standard modifier category currently	defined	is ``im'', which
  identifies the desired input method.	The values for input method are	not
  standardized.	 A single locale may use multiple input	methods, switching
  input	method under user control.  The	modifier may specify the initial
  input	method in effect, or an	ordered	list of	input methods.	Multiple
  input	methods	may be specified in a single im	value string in	an
  implementation-dependent manner.

  The returned modifiers string	is owned by Xlib and should not	be modified
  or freed by the client.  It may be freed by Xlib after the current locale
  or modifiers is changed.  Until freed, it will not be	modified by Xlib.

SEE ALSO
  _X_l_i_b - _C _L_a_n_g_u_a_g_e _X _I_n_t_e_r_f_a_c_e	delim off























































