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

FreeBSD Manual Pages

  
 
  

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

NAME
       CannaLib	intro -- Kana-to-Kanji Conversion Library Intro

DESCRIPTION
       Canna provides the following three libraries:

       -  High-level libraries

	  From	application programs, high-level libraries are available with-
	  out considering Kana-to-Kanji	Conversion.  Processes such as select-
	  ing  candidates  (including  candidate list display) are executed by
	  the Kana-to-Kanji Conversion system.	Only fixed  character  strings
	  are  passed  to  the	application.   If the Kana-to-Kanji Conversion
	  front	end is being used for TTY input, the read (cooked mode)	system
	  call in terminal input is regarded as	a high-level library.  In this
	  case,	scanf, which uses it, is also regarded	as  a  higo-level  li-
	  brary.   The Japanese	version	of Athena Widget (Text Wideget)	in the
	  X Window System is a more typical library  that  is  regarded	 as  a
	  high-level library.

       -  User interface libraries

	  Responding  to  one-character	 or  one-key input, user interface li-
	  braries return various kinds of information.	They include  the  un-
	  fixed	character string, fixed	character string, marked segment posi-
	  tion,	status dispaly character string, and candidate list  character
	  string.   The	 libraries  at	this level do not provide the detailed
	  functions involving  dictionary  maintenance	or  learning  control.
	  There	 is a little remaining room of divising	the display fields al-
	  though rough lines for Japanese input	user interface are restricted.
	  It  is recommended that application interfaces at this level be used
	  for an application that desires to obtain keys in raw	 mode  in  the
	  TTY.	 Also,	it is recommended that they be used for	an application
	  that desires to input	and display graphics and characters in a  sin-
	  gle window.

       -  Dictionary access libraries

	  Dictionary access libraries are used to control dictionary access or
	  candidate selection directly.	 Kana-to-Kanji Conversion libraries at
	  this level provide various function interfaces.  They	include	start-
	  ing the use of Kana-to-Kanji Conversion system, converting the read-
	  ing into Kanji, changing the splitting of sentence-segment, fetching
	  Next or Previous Candidate,  controlling  dictionary	learning,  and
	  maintaining  dictionaries.   Dictionary access libraries are used to
	  construct a user interface or	high-level library.  It	is recommended
	  that they not	be used	by ordinary users.

       Canna  provides three header files and three libraries.	Their outlines
       are listed below:

       -  Header files

	  X11/kanji.h	    Used to input or output Japanese data with X.

	  canna/jrkanji.h   Used to input or output TTY-level Japanese data.

	  canna/RK.h	    Used to use	a dictionary access library.

       -  Libraries

	  libXnw	    Japanese version of	Athena Widget Xaw.  The	appli-
			    cation  program does not need to consider Kana-to-
			    Kanji Conversion.

	  libXn		    Used to process Japanese data with X.  When	 using
			    XLookupKanjiString	or  XDrawKanjiString, you must
			    link this library.

	  libcanna	    Kernel for Japanese	data input

       Library link and	header file include must be done as follows, depending
       on the function you use:

       -  Athena Widget

	  Header file	  canna/kanji.h

	  Library	  libXnw, libXn, libcanna

       -  XDrawKanjiString

	  Header file	  canna/kanji.h

	  Library	  libXn

       -  XLookupKanjiString, XKanjiControl

	  Header file	  canna/kanji.h

	  Library	  libXn, libcanna

       -  jrKanjiString, jrKanjiControl

	  Header file	  canna/jrkanji.h

	  Library	  libcanna

       -  Dictionary access library

	  Header file	  canna/RK.h

	  Library	  libcanna

Conversion context
       Canna  enables you to perform two or more Kana-to-Kanji Conversion pro-
       cesses simultaneously.  Conversion contextsare used to control  manage-
       ment  of	the respective Kana-to-Kanji Conversion	processes.  The	inter-
       nal data	needed for Kana-to-Kanji Conversion is secured	in  each  con-
       text.

       The  application	identifies each	conversion context by the context num-
       ber.  It	is an integer equal to or larger than 0, and used as the first
       parameter of any	Kana-to-Kanji Conversion function.

       Immediately after dictionary access library RkInitialize(3) initializes
       Kana-to-Kanji Conversion, there is only the standard context, which has
       the context number 0.  It can be	used by	any application	that uses only
       one context.

Outline	of Successive Segment Conversion:
       Successive Segment Conversion analyzes the specified  Hiragana  string,
       and  splits  it	into  a	few elements called sentence segments, or Bun-
       setsu.  An example of analysis is shown below:

	 ``KANAWOKANJINIHENKANSURU''
	 KANAWO	       KANAWO(1)     KANAWO(2)
	 KANJINI       KANJINI(1)    KANJINI(2)	   KANJINI(3)	 KANJINI(4)
	 HENKANSURU    HENKANSURU(1) HENKANSURU(2) HENKANSURU(3)

       Each function provided by the dictionary	 access	 library's  Successive
       Segment Conversion may either modify the	result of this analysis	or ob-
       tain the	analysis information.  It assumes a two-dimensional  candidate
       address.

       Segment	numbers	0, 1, ..., N-1 are assigned leftward to	the N segments
       that have been analyzed.	 The currently marked candidate	is called  the
       current candidate.

       For  example, ``KANAWO''	may be specified as a candidate	having Segment
       Number 0	and Candidate Number 0.	 The library instead  assumes  current
       segment and candidate in	the context to simplify	the parameters.

SEE ALSO
       uilib(3)	- User Interface Library

       diclib(3) - Dictionary Access Library

								   CANNALIB(3)

NAME | DESCRIPTION | Conversion context | Outline of Successive Segment Conversion: | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=cannalib&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help