8 * Options from the command line, to pass to each function that need some
22 * Line coming from stdin, wrapped in a header.
25 char *content
; /* sent as output and matched by input */
26 char *comment
; /* displayed at the right of the content */
28 int number
; /* set here as order will not change */
29 int matches
; /* whether it matches buffer's input */
30 int header
; /* whether the line is a header */
32 struct Line
*prev
; /* doubly linked list structure */
38 * Buffer containing a doubly linked list of headers
40 typedef struct Buffer
{
41 int total
; /* total number of line in buffer */
42 int matching
; /* number lines matching the input */
44 char input
[LINE_SIZE
]; /* string from user's keyboard */
45 char *prompt
; /* specified from the command line */
47 Line
*empty
; /* empty line, for when needed */
48 Line
*current
; /* selected line, highlighted */
49 Line
*first
; /* boundaries of the linked list */