summaryrefslogtreecommitdiffstats
path: root/wincolor
AgeCommit message (Collapse)Author
2018-07-17termcolor: moved to its own repositoryAndrew Gallant
We also move wincolor with it. Fixes #924
2018-02-11wincolor: release 0.1.6wincolor-0.1.6Andrew Gallant
2018-02-10termcolor: support ANSI in Windows terminalsAndrew Gallant
This commit uses the new virtual terminal processing feature in Windows 10 to enable the use of ANSI escape codes to color ripgrep's output. This technique is preferred over the console APIs because it seems like where the future is heading, but also because it avoids needing to use an intermediate buffer to deal with the Windows console in a multithreaded environment.
2018-02-10wincolor: add support for enabling VT100Andrew Gallant
This commit adds a new method to the Console type which permits toggling the VIRTUAL_TERMINAL_PROCESSING mode on a console. Specifically, this enables the use of ANSI escape sequences for color in Windows terminals.
2018-02-03wincolor-0.1.5wincolor-0.1.5Andrew Gallant
2017-12-30wincolor: migrate to winapi 0.3Steffen Butzer
2017-12-19Speeding CI buildsLilian A. Moraru
2017-06-19wincolor-0.1.4wincolor-0.1.4Andrew Gallant
2017-06-19wincolor: Re-fetch the console on all callsAlex Crichton
The primary motivation for this commit was rust-lang/cargo#4189 where dropping a `wincolor::Console` would call `CloseHandle` to close the console handle. Cargo creates a few `Console` instances so it ended up closing stdout a little earlier as intended! The `GetStdHandle` function returns handles I believe aren't intended to be closed (as there's no refcounting). I believe libstd doesn't close these handles. This commit also moves to calling `GetStdHandle` on demand which libstd changed to doing so recently as well, preventing caching of stale handles that change over time with calls to `SetStdHandle`.
2017-03-12Bump and update deps.wincolor-0.1.3termcolor-0.3.1ignore-0.1.8grep-0.1.6globset-0.1.4Andrew Gallant
2017-03-12Add license files to each crate.Andrew Gallant
Fixes #381
2017-01-17wincolor-0.1.2wincolor-0.1.2Andrew Gallant
2017-01-17Add stderr support to wincolor.Peter Williams
2017-01-130.4.00.4.0Andrew Gallant
2016-12-24add docs to wincolorAndrew Gallant
2016-12-24Small code cleanups.Andrew Gallant
2016-11-20Make wincolor crate compilable on non-Windows platforms.wincolor-0.1.0termcolor-0.1.0Andrew Gallant
2016-11-20Completely re-work colored output and tty handling.Andrew Gallant
This commit completely guts all of the color handling code and replaces most of it with two new crates: wincolor and termcolor. wincolor provides a simple API to coloring using the Windows console and termcolor provides a platform independent coloring API tuned for multithreaded command line programs. This required a lot more flexibility than what the `term` crate provided, so it was dropped. We instead switch to writing ANSI escape sequences directly and ignore the TERMINFO database. In addition to fixing several bugs, this commit also permits end users to customize colors to a certain extent. For example, this command will set the match color to magenta and the line number background to yellow: rg --colors 'match:fg:magenta' --colors 'line:bg:yellow' foo For tty handling, we've adopted a hack from `git` to do tty detection in MSYS/mintty terminals. As a result, ripgrep should get both color detection and piping correct on Windows regardless of which terminal you use. Finally, switch to line buffering. Performance doesn't seem to be impacted and it's an otherwise more user friendly option. Fixes #37, Fixes #51, Fixes #94, Fixes #117, Fixes #182, Fixes #231