1*219b2ee8SDavid du Colombier #include <u.h>
2*219b2ee8SDavid du Colombier #include <libc.h>
3*219b2ee8SDavid du Colombier #include <bio.h>
4*219b2ee8SDavid du Colombier #include "dict.h"
5*219b2ee8SDavid du Colombier
6*219b2ee8SDavid du Colombier /*
7*219b2ee8SDavid du Colombier * Routines for handling dictionaries in UTF, headword
8*219b2ee8SDavid du Colombier * separated from entry by tab, entries separated by newline.
9*219b2ee8SDavid du Colombier */
10*219b2ee8SDavid du Colombier
11*219b2ee8SDavid du Colombier void
simpleprintentry(Entry e,int cmd)12*219b2ee8SDavid du Colombier simpleprintentry(Entry e, int cmd)
13*219b2ee8SDavid du Colombier {
14*219b2ee8SDavid du Colombier uchar *p, *pe;
15*219b2ee8SDavid du Colombier
16*219b2ee8SDavid du Colombier p = (uchar *)e.start;
17*219b2ee8SDavid du Colombier pe = (uchar *)e.end;
18*219b2ee8SDavid du Colombier while(p < pe){
19*219b2ee8SDavid du Colombier if(*p == '\t'){
20*219b2ee8SDavid du Colombier if(cmd == 'h')
21*219b2ee8SDavid du Colombier break;
22*219b2ee8SDavid du Colombier else
23*219b2ee8SDavid du Colombier outchar(' '), ++p;
24*219b2ee8SDavid du Colombier }else if(*p == '\n')
25*219b2ee8SDavid du Colombier break;
26*219b2ee8SDavid du Colombier else
27*219b2ee8SDavid du Colombier outchar(*p++);
28*219b2ee8SDavid du Colombier }
29*219b2ee8SDavid du Colombier outnl(0);
30*219b2ee8SDavid du Colombier }
31*219b2ee8SDavid du Colombier
32*219b2ee8SDavid du Colombier long
simplenextoff(long fromoff)33*219b2ee8SDavid du Colombier simplenextoff(long fromoff)
34*219b2ee8SDavid du Colombier {
35*219b2ee8SDavid du Colombier if(Bseek(bdict, fromoff, 0) < 0)
36*219b2ee8SDavid du Colombier return -1;
37*219b2ee8SDavid du Colombier if(Brdline(bdict, '\n') == 0)
38*219b2ee8SDavid du Colombier return -1;
39*219b2ee8SDavid du Colombier return Boffset(bdict);
40*219b2ee8SDavid du Colombier }
41*219b2ee8SDavid du Colombier
42*219b2ee8SDavid du Colombier void
simpleprintkey(void)43*219b2ee8SDavid du Colombier simpleprintkey(void)
44*219b2ee8SDavid du Colombier {
45*219b2ee8SDavid du Colombier Bprint(bout, "No pronunciation key.\n");
46*219b2ee8SDavid du Colombier }
47