version 1.131, 2014/04/04 18:23:30 |
version 1.132, 2014/04/09 21:50:08 |
Line 224 static const struct mdoc_handler mdocs[MDOC_MAX] = { |
|
Line 224 static const struct mdoc_handler mdocs[MDOC_MAX] = { |
|
{ NULL, TYPE_Ic }, /* Ic */ |
{ NULL, TYPE_Ic }, /* Ic */ |
{ NULL, TYPE_In }, /* In */ |
{ NULL, TYPE_In }, /* In */ |
{ NULL, TYPE_Li }, /* Li */ |
{ NULL, TYPE_Li }, /* Li */ |
{ parse_mdoc_Nd, TYPE_Nd }, /* Nd */ |
{ parse_mdoc_Nd, 0 }, /* Nd */ |
{ parse_mdoc_Nm, 0 }, /* Nm */ |
{ parse_mdoc_Nm, 0 }, /* Nm */ |
{ NULL, 0 }, /* Op */ |
{ NULL, 0 }, /* Op */ |
{ NULL, 0 }, /* Ot */ |
{ NULL, 0 }, /* Ot */ |
Line 1154 mpages_merge(struct mchars *mc, struct mparse *mp) |
|
Line 1154 mpages_merge(struct mchars *mc, struct mparse *mp) |
|
putkey(mpage, cp, TYPE_Nm); |
putkey(mpage, cp, TYPE_Nm); |
assert(NULL == mpage->desc); |
assert(NULL == mpage->desc); |
parse_mdoc(mpage, mdoc_node(mdoc)); |
parse_mdoc(mpage, mdoc_node(mdoc)); |
putkey(mpage, NULL != mpage->desc ? |
if (NULL == mpage->desc) |
mpage->desc : mpage->mlinks->name, TYPE_Nd); |
mpage->desc = mandoc_strdup( |
|
mpage->mlinks->name); |
} else if (NULL != man) |
} else if (NULL != man) |
parse_man(mpage, man_node(man)); |
parse_man(mpage, man_node(man)); |
else |
else |
Line 1298 parse_cat(struct mpage *mpage, int fd) |
|
Line 1299 parse_cat(struct mpage *mpage, int fd) |
|
"Cannot find NAME section"); |
"Cannot find NAME section"); |
assert(NULL == mpage->desc); |
assert(NULL == mpage->desc); |
mpage->desc = mandoc_strdup(mpage->mlinks->name); |
mpage->desc = mandoc_strdup(mpage->mlinks->name); |
putkey(mpage, mpage->mlinks->name, TYPE_Nd); |
|
fclose(stream); |
fclose(stream); |
free(title); |
free(title); |
return; |
return; |
Line 1339 parse_cat(struct mpage *mpage, int fd) |
|
Line 1339 parse_cat(struct mpage *mpage, int fd) |
|
|
|
assert(NULL == mpage->desc); |
assert(NULL == mpage->desc); |
mpage->desc = mandoc_strdup(p); |
mpage->desc = mandoc_strdup(p); |
putkey(mpage, mpage->desc, TYPE_Nd); |
|
fclose(stream); |
fclose(stream); |
free(title); |
free(title); |
} |
} |
Line 1480 parse_man(struct mpage *mpage, const struct man_node * |
|
Line 1479 parse_man(struct mpage *mpage, const struct man_node * |
|
|
|
assert(NULL == mpage->desc); |
assert(NULL == mpage->desc); |
mpage->desc = mandoc_strdup(start); |
mpage->desc = mandoc_strdup(start); |
putkey(mpage, mpage->desc, TYPE_Nd); |
|
free(title); |
free(title); |
return; |
return; |
} |
} |
Line 1928 dbadd(struct mpage *mpage, struct mchars *mc) |
|
Line 1926 dbadd(struct mpage *mpage, struct mchars *mc) |
|
if (NULL != mlink) |
if (NULL != mlink) |
fputs(", ", stdout); |
fputs(", ", stdout); |
} |
} |
for (key = ohash_first(&strings, &slot); NULL != key; |
printf(" - %s\n", mpage->desc); |
key = ohash_next(&strings, &slot)) { |
|
if (TYPE_Nd & key->mask) { |
|
if (NULL == key->rendered) |
|
render_key(mc, key); |
|
printf(" - %s", key->rendered); |
|
break; |
|
} |
|
} |
|
putchar('\n'); |
|
return; |
return; |
} |
} |
|
|
Line 1945 dbadd(struct mpage *mpage, struct mchars *mc) |
|
Line 1934 dbadd(struct mpage *mpage, struct mchars *mc) |
|
say(mlink->file, "Adding to database"); |
say(mlink->file, "Adding to database"); |
|
|
i = 1; |
i = 1; |
|
SQL_BIND_TEXT(stmts[STMT_INSERT_PAGE], i, mpage->desc); |
SQL_BIND_INT(stmts[STMT_INSERT_PAGE], i, FORM_SRC == mpage->form); |
SQL_BIND_INT(stmts[STMT_INSERT_PAGE], i, FORM_SRC == mpage->form); |
SQL_STEP(stmts[STMT_INSERT_PAGE]); |
SQL_STEP(stmts[STMT_INSERT_PAGE]); |
mpage->recno = sqlite3_last_insert_rowid(db); |
mpage->recno = sqlite3_last_insert_rowid(db); |
Line 2157 dbopen(int real) |
|
Line 2147 dbopen(int real) |
|
|
|
create_tables: |
create_tables: |
sql = "CREATE TABLE \"mpages\" (\n" |
sql = "CREATE TABLE \"mpages\" (\n" |
|
" \"desc\" TEXT NOT NULL,\n" |
" \"form\" INTEGER NOT NULL,\n" |
" \"form\" INTEGER NOT NULL,\n" |
" \"id\" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL\n" |
" \"id\" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL\n" |
");\n" |
");\n" |
Line 2189 prepare_statements: |
|
Line 2180 prepare_statements: |
|
"sec=? AND arch=? AND name=?)"; |
"sec=? AND arch=? AND name=?)"; |
sqlite3_prepare_v2(db, sql, -1, &stmts[STMT_DELETE_PAGE], NULL); |
sqlite3_prepare_v2(db, sql, -1, &stmts[STMT_DELETE_PAGE], NULL); |
sql = "INSERT INTO mpages " |
sql = "INSERT INTO mpages " |
"(form) VALUES (?)"; |
"(desc,form) VALUES (?,?)"; |
sqlite3_prepare_v2(db, sql, -1, &stmts[STMT_INSERT_PAGE], NULL); |
sqlite3_prepare_v2(db, sql, -1, &stmts[STMT_INSERT_PAGE], NULL); |
sql = "INSERT INTO mlinks " |
sql = "INSERT INTO mlinks " |
"(sec,arch,name,pageid) VALUES (?,?,?,?)"; |
"(sec,arch,name,pageid) VALUES (?,?,?,?)"; |