(linenum→info "unix/slp.c:2238")

anthy/9100e/anthy/anthy.h

    1: /*
    2:  * Anthy library interface
    3:  * Anthy is a KanaKanji conversion engine (Library for Japanese Input Method)
    4:  *
    5:  * please read doc/LIB file in source package.
    6:  *
    7:  * Most of declarations are public interface.
    8:  * So, be careful if you want to modify this file.
    9:  *
   10:  * $Id: anthy.h,v 1.6 2002/03/05 02:45:32 gniibe Exp $
   11:  */
   12: #ifndef _anthy_h_included_
   13: #define _anthy_h_included_
   14: 
   15: #ifdef __cplusplus
   16: extern "C" {
   17: #endif
   18: 
   19: 
   20: /* Data types */
   21: struct anthy_conv_stat {
   22:   int nr_segment;
   23: };
   24: 
   25: struct anthy_segment_stat {
   26:   int nr_candidate;
   27:   int seg_len;
   28: };
   29: 
   30: struct anthy_prediction_stat {
   31:   int nr_prediction;
   32: };
   33: 
   34: typedef struct anthy_context *anthy_context_t;
   35: 
   36: 
   37: 
   38: /* constants */
   39: #define NTH_UNCONVERTED_CANDIDATE -1
   40: #define NTH_KATAKANA_CANDIDATE -2
   41: #define NTH_HIRAGANA_CANDIDATE -3
   42: #define NTH_HALFKANA_CANDIDATE -4
   43: /* encoding constants */
   44: #define ANTHY_COMPILED_ENCODING 0
   45: #define ANTHY_EUC_JP_ENCODING 1
   46: #define ANTHY_UTF8_ENCODING 2
   47: /* reconvert mode */
   48: #define ANTHY_RECONVERT_AUTO 0
   49: #define ANTHY_RECONVERT_DISABLE 1
   50: #define ANTHY_RECONVERT_ALWAYS 2
   51: 
   52: /* Configuration */
   53: extern int anthy_init(void);
   54: extern void anthy_quit(void);
   55: extern void anthy_conf_override(const char *, const char *);
   56: extern int anthy_set_personality(const char *);
   57: 
   58: 
   59: 
   60: /* Context management */
   61: extern anthy_context_t anthy_create_context(void);
   62: extern void anthy_reset_context(anthy_context_t);
   63: extern void anthy_release_context(anthy_context_t);
   64: 
   65: 
   66: 
   67: /* Conversion control */
   68: extern int anthy_set_string(anthy_context_t, const char *);
   69: /* nth,resize ie. +1,-1 */
   70: extern void anthy_resize_segment(anthy_context_t, int, int);
   71: extern int anthy_get_stat(anthy_context_t, struct anthy_conv_stat *);
   72: extern int anthy_get_segment_stat(anthy_context_t, int, struct anthy_segment_stat *);
   73: /* context,nth segment,nth candidate,buffer,buffer len */
   74: extern int anthy_get_segment(anthy_context_t, int, int, char *, int);
   75: /* 一文節ごとにコミットする */
   76: extern int anthy_commit_segment(anthy_context_t, int, int);
   77: 
   78: /* Prediction */
   79: #define HAS_ANTHY_PREDICTION
   80: extern int anthy_set_prediction_string(anthy_context_t, const char*);
   81: extern int anthy_get_prediction_stat(anthy_context_t, struct anthy_prediction_stat *);
   82: /* context, nth prediction, buffer, buffer len*/
   83: extern int anthy_get_prediction(anthy_context_t, int, char*, int);
   84: #define HAS_ANTHY_COMMIT_PREDICTION
   85: extern int anthy_commit_prediction(anthy_context_t, int);
   86: 
   87: /* Etc */
   88: extern void anthy_print_context(anthy_context_t);
   89: 
   90: extern const char *anthy_get_version_string (void);
   91: typedef void (*anthy_logger)(int level, const char *);
   92: extern void anthy_set_logger(anthy_logger , int level);
   93: 
   94: /* experimental and unstable */
   95: #define HAS_ANTHY_CONTEXT_SET_ENCODING
   96: extern int anthy_context_set_encoding(anthy_context_t ac, int encoding);
   97: #define HAS_ANTHY_SET_RECONVERSION_MODE
   98: extern int anthy_set_reconversion_mode(anthy_context_t ac, int mode);
   99: 
  100: #ifdef __cplusplus
  101: }
  102: #endif
  103: 
  104: #endif
Syntax (Markdown)