docs: switched lexer for python console snippets to 'pycon'
diff --git a/docs/advanced.rst b/docs/advanced.rst
index ba95c20..452f627 100644
--- a/docs/advanced.rst
+++ b/docs/advanced.rst
@@ -157,7 +157,7 @@
 
 The following interactive session shows how to call them from Python.
 
-.. code-block:: python
+.. code-block:: pycon
 
     $ python
     >>> import example
@@ -304,7 +304,7 @@
 The Python session below shows how to override ``Animal::go`` and invoke it via
 a virtual method call.
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> from example import *
     >>> d = Dog()
@@ -834,7 +834,7 @@
 
 and call it from Python, the following happens:
 
-.. code-block:: python
+.. code-block:: pycon
 
    >>> v = [5, 6]
    >>> append_1(v)
@@ -863,7 +863,7 @@
 In this case, properties can be read and written in their entirety. However, an
 ``append`` operaton involving such a list type has no effect:
 
-.. code-block:: python
+.. code-block:: pycon
 
    >>> m = MyClass()
    >>> m.contents = [5, 6]
@@ -1144,7 +1144,7 @@
 by the compiler. The result is returned as a NumPy array of type
 ``numpy.dtype.float64``.
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> x = np.array([[1, 3],[5, 7]])
     >>> y = np.array([[2, 4],[6, 8]])
@@ -1316,7 +1316,7 @@
 in the function signature is generated using the object's ``__repr__`` method.
 If not available, the signature may not be very helpful, e.g.:
 
-.. code-block:: python
+.. code-block:: pycon
 
     FUNCTIONS
     ...
diff --git a/docs/basics.rst b/docs/basics.rst
index b1765c5..73d2170 100644
--- a/docs/basics.rst
+++ b/docs/basics.rst
@@ -128,7 +128,7 @@
 is located in the current directory, the following interactive Python session
 shows how to load and execute the example.
 
-.. code-block:: python
+.. code-block:: pycon
 
     $ python
     Python 2.7.10 (default, Aug 22 2015, 20:33:39)
@@ -157,7 +157,7 @@
 call the function using keyword arguments, which is a more readable alternative
 particularly for functions taking many parameters:
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> import example
     >>> example.add(i=1, j=2)
@@ -165,7 +165,7 @@
 
 The keyword names also appear in the function signatures within the documentation.
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> help(example)
 
@@ -201,7 +201,7 @@
 
 The default values also appear within the documentation.
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> help(example)
 
diff --git a/docs/classes.rst b/docs/classes.rst
index c98f8da..a3a0bf3 100644
--- a/docs/classes.rst
+++ b/docs/classes.rst
@@ -44,7 +44,7 @@
 constructor (see the :ref:`custom_constructors` section for details). An
 interactive Python session demonstrating this example is shown below:
 
-.. code-block:: python
+.. code-block:: pycon
 
     % python
     >>> import example
@@ -73,7 +73,7 @@
 
 Note how ``print(p)`` produced a rather useless summary of our data structure in the example above:
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> print(p)
     <example.Pet object at 0x10cd98060>
@@ -99,7 +99,7 @@
 Both stateless [#f1]_ and stateful lambda closures are supported by pybind11.
 With the above change, the same Python code now produces the following output:
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> print(p)
     <example.Pet named 'Molly'>
@@ -120,7 +120,7 @@
 
 This makes it possible to write
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> p = example.Pet('Molly')
     >>> p.name
@@ -212,7 +212,7 @@
 Functionality-wise, both approaches are completely equivalent. Afterwards,
 instances will expose fields and methods of both types:
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> p = example.Dog('Molly')
     >>> p.name
@@ -253,7 +253,7 @@
 
 The overload signatures are also visible in the method's docstring:
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> help(example.Pet)
 
@@ -319,7 +319,7 @@
 into the parent scope, which should be skipped for newer C++11-style strongly
 typed enums.
 
-.. code-block:: python
+.. code-block:: pycon
 
     >>> p = Pet('Lucy', Pet.Cat)
     >>> p.type