diff options
author | Tavian Barnes <tavianator@tavianator.com> | 2015-06-20 00:04:59 -0400 |
---|---|---|
committer | Tavian Barnes <tavianator@tavianator.com> | 2015-06-20 00:04:59 -0400 |
commit | 22291402d329a49ab8ab4a272344cab902b2ab3b (patch) | |
tree | b1337c8e1dbfe6ae1b9d79e2b16af210562c2e17 /color.h | |
parent | ad628c395cc45add3e3a87f21250cbd0df1d860e (diff) | |
download | bfs-22291402d329a49ab8ab4a272344cab902b2ab3b.tar.xz |
Add initial support for colorized output.
Diffstat (limited to 'color.h')
-rw-r--r-- | color.h | 46 |
1 files changed, 46 insertions, 0 deletions
@@ -0,0 +1,46 @@ +/********************************************************************* + * bfs * + * Copyright (C) 2015 Tavian Barnes <tavianator@tavianator.com> * + * * + * This program is free software. It comes without any warranty, to * + * the extent permitted by applicable law. You can redistribute it * + * and/or modify it under the terms of the Do What The Fuck You Want * + * To Public License, Version 2, as published by Sam Hocevar. See * + * the COPYING file or http://www.wtfpl.net/ for more details. * + *********************************************************************/ + +#include <sys/stat.h> + +/** + * A lookup table for colors. + */ +typedef struct color_table color_table; + +/** + * Parse a color table. + * + * @param ls_color + * A color table in the LS_COLORS environment variable format. + * @return The parsed color table. + */ +color_table *parse_colors(char *ls_colors); + +/** + * Pretty-print a file path. + * + * @param colors + * The color table to use. + * @param fpath + * The file path to print. + * @param sb + * A stat() buffer for fpath. + */ +void pretty_print(const color_table *colors, const char *fpath, const struct stat *sb); + +/** + * Free a color table. + * + * @param colors + * The color table to free. + */ +void free_colors(color_table *colors); |