Skip to main content

X(), for low level debugging

Project description

X(), for low level debugging

X() is my function for low level ad hoc debug messages. It takes a message and optional format arguments for use with %. It is presented here in its own module for reuse.

It normally writes directly to sys.stderr but accepts an optional keyword argument file to specify a different filelike object. If file is not specified, its behaviour is further tweaked with the globals X_discard, X_logger and X_via_tty: if X_logger then log a warning to that logger; otherwise if X_via_tty then open /dev/tty and write the message to it; otherwise if X_discard then discard the message; otherwise write the message to sys.stderr. X_discard's default value is not sys.stderr.isatty().

Function X(msg, *args, **kw)

Unconditionally write the message msg.

If there are positional arguments after msg, format msg using %-expansion with those arguments.

Keyword arguments:

  • file: optional keyword argument specifying the output file.
  • colour: optional text colour. If specified, surround the message with ANSI escape sequences to render the text in that colour.

If file is not None, write to it unconditionally; otherwise if X_logger then log a warning to that logger; otherwise if X_via_tty then open /dev/tty and write the message to it; otherwise if X_discard then discard the message; otherwise write the message to sys.stderr.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for cs.x, version 20181231
Filename, size File type Python version Upload date Hashes
Filename, size cs.x-20181231.tar.gz (2.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page