Yolinux.com

Compose manpage

Search topic Section


Compose(5)		      File Formats Manual		    Compose(5)



NAME
       Compose - X client mappings for multi-key input sequences

DESCRIPTION
       The  X  library,	 libX11, provides a simple input method for characters
       beyond those represented on typical keyboards using  sequences  of  key
       strokes that are combined to enter a single character.

       The compose file is searched for in  the following order:

       -      If  the  environment variable $XCOMPOSEFILE is set, its value is
	      used as the name of the Compose file.

       -      If the user's home directory has a file named .XCompose,	it  is
	      used as the Compose file.

       -      The  system  provided compose file is used by mapping the locale
	      to a compose file from the  list	in  /usr/share/X11/locale/com-
	      pose.dir.

       Compose files can use an "include" instruction.	This allows local mod-
       ifications to be made to existing compose files without	including  all
       of  the	content directly.  For example, the system's iso8859-1 compose
       file can be included with a line like this:
	   include "%S/iso8859-1/Compose"

       There are several substitutions that can be made in the	file  name  of
       the include instruction:

       %H  expands  to	the user's home directory (the $HOME environment vari-
	   able)

       %L  expands to the name of the  locale  specific	 Compose  file	(i.e.,
	   "/usr/share/X11/locale/<localename>/Compose")

       %S  expands  to	the  name  of  the  system directory for Compose files
	   (i.e., "/usr/share/X11/locale")

       For example, you can include in your compose file the  default  Compose
       file by using:
	      include "%L"
       and  then rewrite only the few rules that you need to change.  New com-
       pose rules can be added, and previous ones replaced.

FILE FORMAT
       Compose files are plain text files, with a separate line for each  com-
       pose  sequence.	  Comments  begin  with	 #  characters.	  Each compose
       sequence specifies one or more events and a resulting  input  sequence,
       with an optional comment at the end of the line:
	      EVENT [EVENT...] : RESULT [# COMMENT]

       Each  event consists of a specified input keysym, and optional modifier
       states:
	      [MODIFIER_LIST] <keysym>

       Each modifier consists of a specified modifier and a state:
	      (! MODIFIER ) | None
       Modifiers may be preceded by a "~" character to indicate that the modi-
       fier must not be present.

       The  result  specifies  a  string,  keysym,  or both, that the X client
       receives as input when the sequence of events is input:
	      "STRING" | keysym | "STRING" keysym

       Keysyms are specified without the XK_ prefix.

       Strings may be direct text encoded in the locale for which the  compose
       file  is to be used, or an escaped octal or hexadecimal character code.
       Octal codes are specified as "\123" and hexadecimal codes as "\0x123a".
       It  is  not  necessary  to specify in the right part of a rule a locale
       encoded string in addition to the keysym name.  If the string is	 omit-
       ted,  Xlib  figures  it	out  from  the keysym according to the current
       locale.	I.e., if a rule looks like:
	      <dead_grave> <A> : "\300" Agrave
       the result of the composition is always	the  letter  with  the	"\300"
       code.  But if the rule is:
	      <dead_grave> <A> : Agrave
       the result depends on how Agrave is mapped in the current locale.

ENVIRONMENT
       XCOMPOSEFILE
	      File to use for compose sequences.

       XCOMPOSECACHE
	      Directory to use for caching compiled compose files.

FILES
       $HOME/.XCompose
	      User default compose file if XCOMPOSEFILE is not set.

       /usr/share/X11/locale/compose.dir
	      File listing the compose file path to use for each locale.

       /usr/share/X11/locale/<localemapping>/Compose
	      System  default  compose	file  for  the locale, mapped via com-
	      pose.dir.

       /var/cache/libx11/compose/
	      System-wide cache directory for compiled compose files.

       $HOME/.compose-cache/
	      Per-user cache directory for compiled compose files.

SEE ALSO
       XLookupString(3), XmbLookupString(3), XwcLookupString(3),  Xutf8Lookup-
       String(3), mkcomposecache(1), locale(7).
       Xlib - C Language X Interface



X Version 11			 libX11 1.6.0			    Compose(5)