.. _code_samples:

============
Code samples
============

Plain text (no language coloring)
=================================

A sample ::

  Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Mauris commodo nibh
  at quam. Integer vitae augue. Curabitur tempor, eros nec placerat porta, eros
  dui tincidunt diam, id bibendum tellus nibh eu orci. Fusce mattis, nunc eu
  aliquet luctus, nulla orci tempor elit, sit amet semper ipsum risus at
  libero. Morbi rutrum, dui eu fermentum consectetuer, lectus elit imperdiet
  risus, eget ornare lorem lectus sit amet magna. Quisque vestibulum erat nec
  quam. Mauris nibh lacus, pellentesque ut, accumsan nec, elementum in,
  tellus. Phasellus et eros ut lorem luctus consequat. Vestibulum sed purus
  nonummy mauris vulputate vestibulum. Aliquam ac sapien. Quisque convallis eros
  a metus. Maecenas wisi. Aliquam quis tortor sit amet ligula rutrum
  luctus. Donec eu velit. Fusce pretium consequat enim.

XML code
========

Using the ``code-block`` rule...

.. code-block:: xml

   <?xml version="1.0"?>
   <root>
     <elem attr="value">
       <![CDATA[
       Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Mauris commodo
       nibh at quam.
       ]]>
     </elem>
     <elem>
       <!-- A comment -->
       Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Mauris commodo
       nibh at quam.
     </elem>
   </root>

Python code
===========

With line numbering...

.. code-block:: python
   :linenos:

   #!/usr/bin/env python
   """Docstring of the module"""

   class FooClass(object):
       """What's my role
       """

       def __init__(self):
           self.dummy = "dummy string"
           self.value = None
           # A comment
           return

       def bar(self, value):
           """Docstring
           """
           if value < 0:
               self.value = True
           else:
               self.value = False
           return

   if __name__ == '__main__':
       # Testing
       x = FooClass()
       x.bar(150)
       assert x.value

INI format
==========

Used in buildout, etc.

.. code-block:: cfg

   [default]
   # Some comment
   name = value
   foo = bar

What when pygments is lost:

.. code-block:: cfg

   # Simple comment
   [default]
   # 'cfg' mode does not like blank lines

   foo = bar
   [section]
   # 'cfg' mode does not like multilines options
   option =
       value1
       value2
