aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/mansearch.h
Commit message (Collapse)AuthorAgeFilesLines
* Remember which names are in the NAME section.Ingo Schwarze2014-04-041-42/+43
| | | | | | | This helps to find missing MLINKS. Database build times do not change and database growth is minimal (1.2% with -Q, 0.7% without -Q in /usr/share/man), so making this optional would be pointless.
* Sort the macro keys by their real-world frequency to reduce the averageIngo Schwarze2014-01-181-41/+41
| | | | | | | | mask size. No functional change. This shrinks the standard /usr/share/man database by 7%, now at 10.3x the size of whatis.db, and with -Q even by 11%, now at 3.0x of whatis.db. Now i'm out of ideas to easily shrink the size of the database.
* Drop Nd from the mpages table, it is still in the keys table.Ingo Schwarze2014-01-061-2/+1
| | | | | This shrinks the database in standard mode by 3%, in -Q mode by 9%, without loss of functionality.
* Put section and architecture info into the keys table,Ingo Schwarze2014-01-051-1/+3
| | | | | | | | | | in preparation for removing them from the mpages table, aiming for cleaner and more uniform interfaces. Database growth is below 4%, part of which will be reclaimed. As a bonus, this allows searches like: ./obj/apropos An=kettenis -a arch=ppc ./obj/apropos An=kettenis -a sec~[^4]
* Experimental feature to let apropos(1) show different keys than .Nd.Ingo Schwarze2013-12-311-1/+4
| | | | | | | | This really takes us beyond what grep -R /usr/*/man/ can do because now you can search for pages by *one* criterion and then display the contents of *another* macro from those pages, like in $ apropos -O Ox Fa~wchar to get an impression how long wide character handling is available.
* Change the mansearch() interface to use the mlinks table in the databaseIngo Schwarze2013-12-271-2/+3
| | | | | | and return a list of names with sections, used by apropos(1) for display. While here, improve uniformity of the interface by allocating the file name dynamically, just like the names list and the description.
* No point in inventing yet another file name for the database.Ingo Schwarze2013-06-061-2/+2
| | | | | | We are not going back to Berkeley DB and don't care about overwriting any obsolete files that may be lying around. So, go back from "mandocdb.db" to "mandoc.db".
* Some places used PATH_MAX from <limits.h>, some MAXPATHLEN from <sys/param.h>.Ingo Schwarze2013-06-051-2/+2
| | | | | | Consistently use the PATH_MAX since it is specified by POSIX, while MAXPATHLEN is not. In preparation for using this at a few more places.
* Merge whatis.1 into apropos.1 (and remove), add whatis bits to aproposKristaps Dzonsons2012-06-091-5/+53
| | | | (via mansearch), and merge mandocdb.h into mansearch.h (and remove).
* Add a new mansearch.h interface, which replaces apropos_db.cKristaps Dzonsons2012-06-081-0/+38
This is a much more minimal interface that stuffs all operations into a single function. It uses sqlite3 and ohash.