diff options
-rw-r--r-- | Makefile | 3 | ||||
-rw-r--r-- | README.cgit | 90 | ||||
-rwxr-xr-x | readme.pl | 30 |
3 files changed, 123 insertions, 0 deletions
@@ -30,3 +30,6 @@ clean: release: sh ./release.sh + +readme: + perl ./readme.pl diff --git a/README.cgit b/README.cgit new file mode 100644 index 0000000..6568c1b --- /dev/null +++ b/README.cgit @@ -0,0 +1,90 @@ +<pre> +colorize +======== + +Description +----------- +Colorize aims at being a small, independent and handy command-line +text colorizing tool. It emits ANSI escape sequences in order to +color lines of text; also, sequences emitted by colorize or foreign +programs may be cleared. + +The main code is written in C (c89 mostly), whereas the test script +consists of Perl code. + +Colorize is known to build and test successfully on Linux and +Net/Open/MirBSD. Other platforms are untested, so be prepared for +it to eventually not work as expected there. + +Requirements +------------ +gcc +make +perl +valgrind (optional) + +Build instructions +------------------ +Issue `make' to build colorize. + +Once completed, run the tests with `make check'. + +Then you should most likely have a working binary. + +Next, install it with `make install' (may require elevated +user permissions). + +Finally, clean up the working directory through `make clean'. + +Customizing instructions +------------------------ +The default character ('/') which separates the foreground +from the background color may be redefined: + +`make FLAGS=-DCOLOR_SEP_CHAR_COLON' -> defines as ':' +`make FLAGS=-DCOLOR_SEP_CHAR_SLASH' -> defines as '/' + +Debugging instructions +---------------------- +For the sake of completeness, colorize can be also built with +debugging output by issuing `make FLAGS=-DDEBUG'. The intention +is to provide some memory allocation diagnostics (and might be +extended in future). Usually, a debugging build is not required. + +Furthermore, tests can be run through valgrind by issuing, for +example, `make check_valgrind 2>&1 | tee valgrind.out'. The +file provided here for the `tee' invocation will be populated +with the captured output from both standard output and error +stream. + +Configuration File +------------------ +A user configuration file may be populated with options and +according values. See man page source file `colorize.1' for +details. + +Documentation +------------- +See man page source file: colorize.1. + +Usage example +------------- +In ~/.bashrc: + +| ls_color() { +| ls "$@" | colorize green - +| } +| alias ls=ls_color + +This excerpt defines an alias which will set the color being +printed for literal ls invocations to green. + +Afterword +--------- +Let me know, if you have ideas, bug reports, patches, etc. + +Author +------ +Steven Schubiger <stsc@refcnt.org> + +</pre> diff --git a/readme.pl b/readme.pl new file mode 100755 index 0000000..877364b --- /dev/null +++ b/readme.pl @@ -0,0 +1,30 @@ +#!/usr/bin/perl + +use strict; +use warnings; + +my $readme = 'README'; +my $readme_cgit = 'README.cgit'; + +die "$0: $readme does not exist\n" unless -e $readme; + +open(my $fh, '<', $readme) or die "Cannot open $readme for reading: $!\n"; +my $text = do { local $/; <$fh> }; +close($fh); + +$text = do { + local $_ = $text; + s/</</g; + s/>/>/g; + $_ +}; + +print "Writing $readme_cgit\n"; + +open($fh, '>', $readme_cgit) or die "Cannot open $readme_cgit for writing: $!\n"; +print {$fh} <<"CGIT"; +<pre> +$text +</pre> +CGIT +close($fh); |