jconv8 - code conversion STREAMS module (8-bit JIS/Japanese EUC)
#include <sys/types.h>
#include <sys/stropt.h>
#include <sys/conf.h>
ioctl(fd, I_PUSH, "jconv8");
jconv8 is a STREAMS module that is available to be pushed onto a stream. Usually, this module has to be pushed onto a stream between a raw device such as ptem (7M) and terminal line discipline module such as ldterm(7M) .
jconv8 has to be pushed when you set 8–bit JIS terminal and control Japanese EUC data. It converts up stream for 8–bit JIS code into Japanese EUC and passes high module. It also converts down stream for Japanese EUC into 8–bit JIS code and passes low module.
jconv8 processes the following ioctls. JA_SKIOC and JA_GKIOC are specified pointers to the next structure as argument:
struct kioc { char ki; char ko; };
Change the third character of JIS kanji and ASCII indication escape sequence.
Return the third character of current JIS kanji and ASCII indication escape sequence.
Start performing code conversion between 8–bit JIS and Japanese EUC for I/O stream.
Stop performing code conversion between 8–bit JIS and Japanese EUC for I/O stream.
See attributes(5) for descriptions of the following attributes:
|
setterm(1), stty(1), streamio(7I), jconv7 (7M), jconvrs (7M), jconvru (7M), jconvs (7M), jconvu (7M), ldterm (7M), ptem (7M)
When you use jconv8 with jconvrs (7M) or jconvru (7M) at a time and `raw' is specified by stty(1), code convert function automatically becomes off without specification by EUC_OXLON / EUC_OXLOFF . By default, character set indication escape sequences as follows. The end character may be changed by JA_SKIOC.
ASCII indication: ESC 2/8 4/10
Character indication: ESC 2/4 4/2
Convert with JIS X 0201 Kana: LS1/LS0
jconv8 does not support Kanji code for Information Interchange (secondary kanji set) provided by JIS X 0212–1990.
When jconv8 is in use, csh(1) does not work properly for filename additional function.