Also, the signature of print_color_escape() must be the same on Windows
and UN*X; put the function body, but not the opening part of the
definition, inside #ifdefs.
Change-Id: I060e01d3280bfc4596a852211f5ab3c58d1e8642
Reviewed-on: https://code.wireshark.org/review/22086
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This new interface allows printing a line with specified foreground and
background colors. The implementation avoids printing escape sequences
if the output stream is not a TTY and note that escape sequences are
ignored on Windows.
This initial implementation relies on relatively modern 24-bit color
support which is present in many terminal emulators but may not always
display properly on older or simpler emulators. Windows coloring is
handled with SetConsoleTextAttribute, which offers a "1-bit" color
experience (but it's better than nothing)
This commit is a precursor to adding additional coloring to tshark.
Bug: 5158
Change-Id: Ib2b9d800095a065a4bb60abe0550862cda5539ec
Reviewed-on: https://code.wireshark.org/review/21324
Reviewed-by: Michael Mann <mmann78@netscape.net>
isatty adds a small delay, at least on OS X. Call it only when we
allocate a stream. Do the same for our codeset check.
Change-Id: Id3a20059dbc9cf7d5db16d8d238d038b9de0ebf2
Reviewed-on: https://code.wireshark.org/review/16222
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
If we detect that we're writing to a TTY and that it doesn't support
UTF-8, convert our output to the current code page on UNIX/Linux or
to UTF-16LE on Windows. This helps to ensure that we don't fill users'
screens with mojibake, along with scrubbing invalid output.
Add a note about our output behavior to the TShark man page. Add a note
about the glyphs we should and shouldn't be using to utf8_entities.h.
Bug: 12393
Change-Id: I52b6dd240173b80ffb6d35b5950a46a565c97ce8
Reviewed-on: https://code.wireshark.org/review/15277
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Put the low-level print stream code from epan/print.c into
epan/print_stream.c, leaving the higher-level stuff in print.c
Change-Id: Iae961f168ec655a29f434257b1af0937fca9f025
Reviewed-on: https://code.wireshark.org/review/5436
Reviewed-by: Guy Harris <guy@alum.mit.edu>