Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
RKMAPPHONOGRAM(3)	   Library Functions Manual	     RKMAPPHONOGRAM(3)

NAME
       RkMapPhonogram  -  perform  Romaji-kana conversion by using a specified
       Romaji-kana conversion table

SYNOPSIS
       #include	<canna/RK.h>
       int RkMapPhonogram(romaji, dst, maxdst, src, srclen, flags, ulen,
			 dlen, tlen, rule)
       struct RkRxDic *romaji;
       unsigned	char *dst;
       int maxdst;
       unsigned	char *src;
       int srclen;
       int flags;
       int *ulen;
       int *dlen;
       int *tlen;
       int *rule;

DESCRIPTION
       RkMapPhonogram performs Romaji-kana conversion by using a specified Ro-
       maji-kana conversion table.  romaji specifies a pointer to the  Romaji-
       kana  conversion	table that has been returned by	RkOpenRoma(3).	RkMap-
       Phonogram interprets the	srclen bytes of	contiguous  data  starting  at
       the  area src as	a Romaji character string and searches through the Ro-
       maji-kana conversion table for the rule of Romaji-kana conversion  that
       matches	the  beginning	of the Romaji character	string.	 If the	corre-
       sponding	conversion rule	is found, the area dst is loaded with the cor-
       responding kana character string, with  dlen  being  set	 to  its  byte
       length.	 The  resulting	 character  string  is truncated when its byte
       length exceeds maxdst -1.

       flags is	a combination of the following	Romaji-kana  conversion	 flags
       connected by or:

	      RK_SOKUON	     Enables  gemination,  in  which a sequence	of two
			     occurrences of the	same character,	 xx,  is  con-
			     verted  to	 small kana character "tsu" only if it
			     is	not defined in the Romaji-kana conversion  ta-
			     ble  file.	  This process provides	for situations
			     in	which an obsolete Romaji-kana conversion table
			     is	used.

	      RK_FLUSH	     Converts  all  Romaji  characters	 compulsorily.
			     Useful  for  handling n appearing at the end of a
			     character string.

       ulen, dlen, and tlen are	used to	manage	the  progress  of  Romaji-kana
       conversion.

       For  example,  if the character string "tt" is given to RkMapPhonogram,
       the first "t" is	submitted to Romaji-kana conversion,  with  dst	 being
       set  to	small kana character "tsu".  The remaining "t" is put to reuse
       for Romaji-kana conversion.  When "a" is	entered	 subsequently,	it  is
       combined	 with  the "t" left from the previous run of RkMapPhonogram to
       generate	kana character "ta".

       ulen is set to the byte length of the characters	from src used for  Ro-
       maji-kana conversion.

       dlen  is	set to the byte	length of the kana characters derived from Ro-
       maji-kana conversion.

       tlen is set to the byte length of the character string to  be  used  in
       the  next  run  of Romaji-kana conversion.  The character string	led by
       tlen is placed after the	character string  resulting  from  Romaji-kana
       conversion in the dst buffers.

       If  null	 pointers are specified	in ulen, dlen, and tlen, these parame-
       ters do not return any values and are simply ignored.

       rule is used to exchange	information about the rule of Romaji-kana con-
       version.	 When calling RkMapPhonogram for the  first  time,  specify  a
       pointer	to  a variable loaded with 0.  Upon return from	the first call
       to RkMapPhonogram, that variable	is loaded  with	 internal  information
       about  the  rule	of Romaji-kana conversion, in place of 0.  To continue
       Romaji-kana conversion, specify the same	pointer	 to  the  variable  to
       RkMapPhonogram.

RETURN VALUE
       This  function  returns	information about whether the character	string
       set in dst has been converted by	using a	rule existing in  the  Romaji-
       kana  conversion	table or not.  The function returns 1 if a rule	exist-
       ing in the Romaji-kana conversion table has been	 used;	otherwise,  it
       returns 0.

							     RKMAPPHONOGRAM(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=RkMapPhonogram&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help