---
name: "RkMapRoma"
section: "3"
platform: "linux"
package: "libcanna1g-dev"
version: "3.7p3-25"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/RkMapRoma"
---

# RkMapRoma(3)

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

## NAME

***RkMapRoma*** - perform Romaji-kana conversion by using a specified Romaji-kana conversion table

## SYNOPSIS

```
#include <canna/RK.h>
int RkMapRoma(romaji, dst, maxdst, src, srclen, flags, status)
struct RkRxDic *romaji;
unsigned char *dst;
int maxdst;
unsigned char *src;
int srclen;
int flags;
int *status;
```

## DESCRIPTION

*RkMapRoma* performs Romaji-kana conversion by using a specified Romaji-kana conversion table.  *romaji* specifies a pointer to the Romaji-kana conversion table that has been returned by *[RkOpenRoma(3)](/RkOpenRoma/3.md)*.  *RkMapRoma* interprets the *srclen* bytes of contiguous data starting at the area *src* as a Romaji character string and searches through the Romaji-kana conversion table for the rule of Romaji-kana conversion that matches the beginning of the Romaji character string.  If the corresponding conversion rule is found, the corresponding kana character string is stored in the area *dst*.  The resulting character string is truncated when its byte length exceeds *maxdst* -1.  *dst* is padded with null characters at the end if possible.

*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 converted to small kana character "tsu" only if it is not defined in the Romaji-kana conversion table file.

- RK\_FLUSH

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

The flags listed below specify the type of characters stored in *src*.  These specified code conversion to be performed on the character string derived from the Romaji-kana conversion table.  These flags can use one by one.

- RK\_NFER

  No conversion

- RK\_XFER

  Hiragana

- RK\_HFER

  Single-byte character

- RK\_KFER

  Katakana

- RK\_ZFER

  Double-byte character

*status* is set to the byte length of the character string set in the area *dst*.  A negative value means that there is no matching Romaji character string.

## RETURN VALUE

This function returns the starting byte length of the Romaji character string matched by Romaji-kana conversion.
