mirror of
https://github.com/yamadapc/d-colorize
synced 2024-11-14 21:14:00 +01:00
5f944fad66
This is a more reasonable approach. |
||
---|---|---|
benchmarks | ||
source | ||
.gitignore | ||
.travis.yml | ||
dub.json | ||
LICENSE | ||
README.md |
d-colorize
A partial port of Ruby's colorize library to D.
To put it simply, this is a simple helper for printing colored output to a terminal.
Installing
This package is registered in the dub registry as colorize.
Usage
import std.stdio;
import colorize : colorize, fg;
void main()
{
writeln("This is blue".colorize(fg.blue));
}
colorize(string str, fg c, bg b=bg.init, mode m=mode.init)
Wraps a string around color escape sequences.
Params
- str = The string to wrap with colors and modes
- c = The foreground color (see the fg enum type)
- b = The background color (see the bg enum type)
- m = The text mode (see the mode enum type)
Example
colorize("This is red over green blinking", fg.blue, bg.green, mode.blink)
Available colors and modes
fg
enum type (Foreground colors)
Foreground text colors are available through the fg
enum. Currently available
colors are:
fg.init
(39)fg.black
(30)fg.red
(31)fg.green
(32)fg.yellow
(33)fg.blue
(34)fg.magenta
(35)fg.cyan
(36)fg.white
(37)fg.light_black
(90)fg.light_red
(91)fg.light_green
(92)fg.light_yellow
(93)fg.light_blue
(94)fg.light_magenta
(95)fg.light_cyan
(96)fg.light_white
(97)
bg
enum type (Background colors)
Background colors are available with the same names through the bg
enum. This
is because background colors come with an offset of 10 to their foreground
counterparts and we wanted to avoid calculating the offset at runtime.
mode
enum type (Text modes)
Text modes are available through the mode
enum. Currently available text modes
are:
mode.init
(0)mode.bold
(1)mode.underline
(4)mode.blink
(5)mode.swap
(7)mode.hide
(8)
License
Copyright (c) 2014 Pedro Tacla Yamada. Licensed under the MIT license. Please refer to the LICENSE file for more info.