X-Git-Url: https://ruderich.org/simon/gitweb/?p=coloredstderr%2Fcoloredstderr.git;a=blobdiff_plain;f=README;h=a140869d59bf3091e4ee1f1030a84833f6122978;hp=5e2209efdd37a5c29813359150938da8f770e31f;hb=08e732449774e01a681684b0c48e5e1ef4969709;hpb=436c2f894ce5213d297658c03f38e41d787e6cee diff --git a/README b/README index 5e2209e..a140869 100644 --- a/README +++ b/README @@ -30,7 +30,8 @@ DEPENDENCIES ------------ - C99 compiler (variable length arrays) -- dynamic linker/loader which supports 'LD_PRELOAD' (e.g. GNU/Linux's ld.so) +- dynamic linker/loader which supports 'LD_PRELOAD' (e.g. GNU/Linux's or + FreeBSD's ld.so) INSTALLATION @@ -93,6 +94,10 @@ The following additional environment variables are available: If set to an non-empty value add pre/post strings even when not writing to a terminal, e.g. when writing to a file. By default, only writes to a terminal are colored. +- 'COLORED_STDERR_IGNORED_BINARIES' + Comma separated list of binary names/paths which should not be tracked + (including their children). Useful for `reset` which writes to the terminal + but fails to work if the output is colored. See below for an example. All environment variables starting with 'COLORED_STDERR_PRIVATE_*' are internal variables used by the implementation and should not be set manually. @@ -109,10 +114,16 @@ Or to be more compatible you can use the following which should work in any Bourne shell: esc=`printf '\033'` - COLORED_STDERR_PRE="${esc}[91m" # red + COLORED_STDERR_PRE="${esc}[91m" # bright red COLORED_STDERR_POST="${esc}[0m" # default export COLORED_STDERR_PRE COLORED_STDERR_POST +Fix `reset`; its writes to the terminal must be unaltered. `reset` is +symbolic-link to `tset` on some systems, adapt as necessary: + + COLORED_STDERR_IGNORED_BINARIES=/usr/bin/tset + export COLORED_STDERR_IGNORED_BINARIES + DEBUG ----- @@ -139,9 +150,15 @@ warnings are appended at the end. KNOWN ISSUES ------------ -- `{fputc,putc,putchar}_unlocked()` are not hooked when writing to stdout - (which might be redirected to stderr). Can't be fixed as the compiler +- `{fputc,putc,putchar}_unlocked()` are not hooked with glibc when writing to + stdout (which might be redirected to stderr). Can't be fixed as the compiler inlines the code into the program without calling any function. +- Test `test_stdio.sh` fails on FreeBSD because it does handle the above + correctly (no inlining), but the test is designed for GNU/Linux. +- 'COLORED_STDERR_IGNORED_BINARIES' requires the `/proc` file system. + Suggestions welcome. +- Output of `strace` is not always colored correctly as the output from + `coloredstderr` is traced and displayed as well. BUGS