plan9fox/sys/src/cmd/dict/simple.c
2011-03-30 19:35:09 +03:00

47 lines
692 B
C

#include <u.h>
#include <libc.h>
#include <bio.h>
#include "dict.h"
/*
* Routines for handling dictionaries in UTF, headword
* separated from entry by tab, entries separated by newline.
*/
void
simpleprintentry(Entry e, int cmd)
{
uchar *p, *pe;
p = (uchar *)e.start;
pe = (uchar *)e.end;
while(p < pe){
if(*p == '\t'){
if(cmd == 'h')
break;
else
outchar(' '), ++p;
}else if(*p == '\n')
break;
else
outchar(*p++);
}
outnl(0);
}
long
simplenextoff(long fromoff)
{
if(Bseek(bdict, fromoff, 0) < 0)
return -1;
if(Brdline(bdict, '\n') == 0)
return -1;
return Boffset(bdict);
}
void
simpleprintkey(void)
{
Bprint(bout, "No pronunciation key.\n");
}