use UTF-8 by default
`echo "Ożarowski" | pygmentize -l diff` works fine now :-)

upstream knows about this patch (will not apply it as not all distributions are
using UTF-8 by defauly, like Debian does)

Index: pygments-1.5/pygments/formatters/latex.py
===================================================================
--- pygments-1.5.orig/pygments/formatters/latex.py
+++ pygments-1.5/pygments/formatters/latex.py
@@ -367,6 +367,6 @@ class LatexFormatter(Formatter):
                 dict(docclass  = self.docclass,
                      preamble  = self.preamble,
                      title     = self.title,
-                     encoding  = self.encoding or 'latin1',
+                     encoding  = self.encoding or 'utf-8',
                      styledefs = self.get_style_defs(),
                      code      = outfile.getvalue()))
Index: pygments-1.5/pygments/lexer.py
===================================================================
--- pygments-1.5.orig/pygments/lexer.py
+++ pygments-1.5/pygments/lexer.py
@@ -61,7 +61,7 @@ class Lexer(object):
     ``encoding``
         If given, must be an encoding name. This encoding will be used to
         convert the input string to Unicode, if it is not already a Unicode
-        string (default: ``'latin1'``).
+        string (default: ``'utf-8'``).
         Can also be ``'guess'`` to use a simple UTF-8 / Latin1 detection, or
         ``'chardet'`` to use the chardet library, if it is installed.
     """
@@ -89,7 +89,7 @@ class Lexer(object):
         self.stripall = get_bool_opt(options, 'stripall', False)
         self.ensurenl = get_bool_opt(options, 'ensurenl', True)
         self.tabsize = get_int_opt(options, 'tabsize', 0)
-        self.encoding = options.get('encoding', 'latin1')
+        self.encoding = options.get('encoding', 'utf-8')
         # self.encoding = options.get('inencoding', None) or self.encoding
         self.filters = []
         for filter_ in get_list_opt(options, 'filters', ()):
Index: pygments-1.5/pygments/lexers/__init__.py
===================================================================
--- pygments-1.5.orig/pygments/lexers/__init__.py
+++ pygments-1.5/pygments/lexers/__init__.py
@@ -101,7 +101,7 @@ def get_lexer_for_filename(_fn, code=Non
 
     if sys.version_info > (3,) and isinstance(code, bytes):
         # decode it, since all analyse_text functions expect unicode
-        code = code.decode('latin1')
+        code = code.decode('utf-8')
 
     def get_rating(info):
         cls, filename = info
Index: pygments-1.5/pygments/formatters/other.py
===================================================================
--- pygments-1.5.orig/pygments/formatters/other.py
+++ pygments-1.5/pygments/formatters/other.py
@@ -64,7 +64,7 @@ class RawTokenFormatter(Formatter):
         if self.encoding:
             raise OptionError('the raw formatter does not support the '
                               'encoding option')
-        self.encoding = 'ascii'  # let pygments.format() do the right thing
+        self.encoding = 'utf-8'  # let pygments.format() do the right thing
         self.compress = get_choice_opt(options, 'compress',
                                        ['', 'none', 'gz', 'bz2'], '')
         self.error_color = options.get('error_color', None)
Index: pygments-1.5/pygments/cmdline.py
===================================================================
--- pygments-1.5.orig/pygments/cmdline.py
+++ pygments-1.5/pygments/cmdline.py
@@ -394,20 +394,20 @@ def main(args=sys.argv):
         else:
             code = sys.stdin.read()
 
-    # No encoding given? Use latin1 if output file given,
+    # No encoding given? Use utf-8 if output file given,
     # stdin/stdout encoding otherwise.
     # (This is a compromise, I'm not too happy with it...)
     if 'encoding' not in parsed_opts and 'outencoding' not in parsed_opts:
         if outfn:
             # encoding pass-through
-            fmter.encoding = 'latin1'
+            fmter.encoding = 'utf-8'
         else:
             if sys.version_info < (3,):
                 # use terminal encoding; Python 3's terminals already do that
                 lexer.encoding = getattr(sys.stdin, 'encoding',
-                                         None) or 'ascii'
+                                         None) or 'utf-8'
                 fmter.encoding = getattr(sys.stdout, 'encoding',
-                                         None) or 'ascii'
+                                         None) or 'utf-8'
     elif not outfn and sys.version_info > (3,):
         # output to terminal with encoding -> use .buffer
         outfile = sys.stdout.buffer
