"typedef enum {T_LOCATION, T_SEARCH, T_OTHER, T_DONTCARE} token_t;" looks very alien to me. I'd suggest something more like MidoriStartup/ MIDORI_STARTUP_BLANK_PAGE style-wise.
I notice random indentation. 4 spaces relative to the previous line OR aligned to brackets if they're not too far to the end of the line, that's the basic rule of thumb.
Mapping between T_LOCATION/ T_SEARCH and action names seems more complicated that it could be. How about defining the values as g_static_string ("Location") etc so they can be used interchangeably without switches?
"typedef enum {T_LOCATION, T_SEARCH, T_OTHER, T_DONTCARE} token_t;" looks very alien to me. I'd suggest something more like MidoriStartup/ MIDORI_ STARTUP_ BLANK_PAGE style-wise.
I notice random indentation. 4 spaces relative to the previous line OR aligned to brackets if they're not too far to the end of the line, that's the basic rule of thumb.
Mapping between T_LOCATION/ T_SEARCH and action names seems more complicated that it could be. How about defining the values as g_static_string ("Location") etc so they can be used interchangeably without switches?