summaryrefslogtreecommitdiff
path: root/keywords.c
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>1999-08-15 18:35:20 +0000
committerSimon Tatham <anakin@pobox.com>1999-08-15 18:35:20 +0000
commit5842eaaf51d9045bc0b199f0b5e82dfc614b2e0c (patch)
treecafd8d6b98802f355cc6e78ac82048388aa6de82 /keywords.c
parent79e16787af150c518f65850c8d54b06074a87c5d (diff)
downloadhalibut-5842eaaf51d9045bc0b199f0b5e82dfc614b2e0c.zip
halibut-5842eaaf51d9045bc0b199f0b5e82dfc614b2e0c.tar.gz
halibut-5842eaaf51d9045bc0b199f0b5e82dfc614b2e0c.tar.bz2
halibut-5842eaaf51d9045bc0b199f0b5e82dfc614b2e0c.tar.xz
Further development; bibliographies seem to work
[originally from svn r200]
Diffstat (limited to 'keywords.c')
-rw-r--r--keywords.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/keywords.c b/keywords.c
index ff213c1..da882bf 100644
--- a/keywords.c
+++ b/keywords.c
@@ -61,7 +61,7 @@ static void heap_sort(keywordlist *kl) {
/* FIXME: check for duplicate keys; do what about them? */
}
-static keyword *kw_lookup(keywordlist *kl, wchar_t *str) {
+keyword *kw_lookup(keywordlist *kl, wchar_t *str) {
int i, j, k, cmp;
i = -1;
@@ -102,12 +102,13 @@ keywordlist *get_keywords(paragraph *source) {
prevpara = source->type;
if (source->keyword && *source->keyword) {
- if (source->kwtext) {
+ if (source->kwtext || source->type == para_Biblio) {
wchar_t *p = source->keyword;
while (*p) {
keyword *kw = smalloc(sizeof(*kw));
kw->key = p;
kw->text = source->kwtext;
+ kw->para = source;
heap_add(kl, kw);
p += ustrlen(p) + 1;
}