#!/usr/bin/env python3 import sys from pygments import highlight from pygments.formatters import HtmlFormatter from pygments.lexers import get_lexer_for_filename, guess_lexer from pygments.util import ClassNotFound def main(): filename = sys.argv[-1] if len(sys.argv) > 1 else "stdin" try: data = sys.stdin.read() except Exception: return try: lexer = get_lexer_for_filename(filename) except ClassNotFound: try: lexer = guess_lexer(data) except ClassNotFound: sys.stdout.write(f"
{data}")
return
formatter = HtmlFormatter(style="default", nowrap=True, classprefix="hl-")
try:
sys.stdout.write("")
highlight(data, lexer, formatter, sys.stdout)
except BrokenPipeError:
pass
if __name__ == "__main__":
main()