Use syntax highlighting for all examples.
diff --git a/README.rst b/README.rst
index b416abb..7e5ba9d 100644
--- a/README.rst
+++ b/README.rst
@@ -1,8 +1,6 @@
 format
 ======
 
-.. highlight:: c++
-
 Format is an open-source C++ library that provides
 string formatting functionality similar to `str.format
 <http://docs.python.org/2/library/stdtypes.html#str.format>`__
@@ -29,19 +27,23 @@
 Examples
 --------
 
-This prints "Hello, world!" to stdout:
+This prints ``Hello, world!`` to stdout:
 
 .. code-block:: c++
 
     fmt::Print("Hello, {0}!") << "world";
 
-Arguments are accessed by position and arguments' indices can be repeated::
+Arguments are accessed by position and arguments' indices can be repeated:
+
+.. code-block:: c++
 
     std::string s = str(fmt::Format("{0}{1}{0}") << "abra" << "cad");
     // s == "abracadabra"
 
 An object of any user-defined type for which there is an overloaded
-``std::ostream`` insertion operator (``operator<<``) can be formatted::
+``std::ostream`` insertion operator (``operator<<``) can be formatted:
+
+.. code-block:: c++
 
     class Date {
       int year_, month_, day_;
@@ -59,7 +61,9 @@
 
 You can use ``fmt::ActiveFormatter`` to create your own functions
 similar to ``fmt::Format`` and ``fmt::Print`` with an arbitrary action
-performed when formatting is complete::
+performed when formatting is complete:
+
+.. code-block:: c++
 
     struct PrintError {
       void operator()(const fmt::Formatter &f) const {
@@ -125,11 +129,15 @@
 IOStreams
 ~~~~~~~~~
 
-The main issue with IOStreams is best illustrated with an example::
+The main issue with IOStreams is best illustrated with an example:
+
+.. code-block:: c++
 
     std::cout << std::setprecision(2) << std::fixed << 1.23456 << "\n";
 
-which is a lot of typing compared to printf::
+which is a lot of typing compared to printf:
+
+.. code-block:: c++
 
     printf("%.2f\n", 1.23456);