Permalink
Browse files

Documentation updates:

- Update Configuration Overview layout
- Add 'testing your configuration' to Configuration Overview
- Update Hacking Qtile to reflect the move from pry to nose
  • Loading branch information...
1 parent eca67b9 commit 8c5ecb412cd546c253a943a8eef495bc11fb75f2 @dmpayton dmpayton committed Aug 15, 2012
Showing with 51 additions and 51 deletions.
  1. +1 −3 docs/_themes/qtile/sidebar_intro.html
  2. +1 −1 docs/index.rst
  3. +35 −41 docs/manual/config/index.rst
  4. +14 −6 docs/manual/hacking.rst
@@ -1,7 +1,5 @@
<h1 class="logo">
- <a href="{{ pathto(master_doc) }}">
- <b>Qtile</b><small>:docs</small>
- </a>
+ <a href="{{ pathto(master_doc) }}"><b>Qtile</b> <small>Documentation</small></a>
</h1>
<!--<iframe src="http://markdotto.github.com/github-buttons/github-btn.html?user=qtile&repo=qtile&type=watch&count=true&size=large"
View
@@ -48,7 +48,7 @@ Commands and scripting
Reference
---------
-* :doc:`Built-in Hooks</manual/ref/hooks>`
+* :doc:`Built-in Hooks </manual/ref/hooks>`
* :doc:`Built-in Layouts </manual/ref/layouts>`
* :doc:`Built-in Widgets </manual/ref/widgets>`
@@ -5,55 +5,49 @@ Qtile is configured in Python. A script (``~/.config/qtile/config.py`` by
default) is evaluated, and a small set of configuration variables are pulled
from its global namespace.
-----
-
-:doc:`/manual/config/groups`
-
-A list of ``libqtile.manager.Group`` objects which defines the group names.
-
-----
-
-:doc:`/manual/config/keys`
-
-A list of ``libqtile.manager.Key`` objects which defines the keybindings. At a
-minimum, this will probably include bindings to switch between windows, groups
-and layouts.
-
-----
-
-:doc:`/manual/config/layouts`
-
-A list layout objects, configuring the layouts you want to use.
-
-----
-
-:doc:`/manual/config/mouse`
-
-A list of ``libqtile.manager.Drag`` and ``libqtile.manager.Click`` objects
-defining mouse operations.
-
-----
+Configuration variables
+-----------------------
-:doc:`/manual/config/screens`
+:doc:`groups </manual/config/groups>`
+ A list of ``libqtile.manager.Group`` objects which defines the group names.
-A list of ``libqtile.manager.Screen`` objects, which defines the physical
-screens you want to use, and the bars and widgets associated with them. Most of
-the visible "look and feel" configuration will happen in this section.
+:doc:`keys </manual/config/keys>`
+ A list of ``libqtile.manager.Key`` objects which defines the keybindings.
+ At a minimum, this will probably include bindings to switch between
+ windows, groups and layouts.
-----
+:doc:`layouts </manual/config/layouts>`
+ A list of layout objects, configuring the layouts you want to use.
-main
+:doc:`mouse </manual/config/mouse>`
+ A list of ``libqtile.manager.Drag`` and ``libqtile.manager.Click`` objects
+ defining mouse operations.
-A function that executes after the window manager is initialized, but before
-groups, screens and other components are set up. There are few reasons to use
-this, other than testing and debugging.
+:doc:`screens </manual/config/screens>`
+ A list of ``libqtile.manager.Screen`` objects, which defines the physical
+ screens you want to use, and the bars and widgets associated with them.
+ Most of the visible "look and feel" configuration will happen in this
+ section.
-----
+main()
+ A function that executes after the window manager is initialized, but
+ before groups, screens and other components are set up.
Putting it all together
-----------------------
-The qtile-examples repository includes a number of real-world configurations
-that demonstrate how you can tune Qtile to your liking.
+The `qtile-examples <https://github.com/qtile/qtile-examples>`_ repository
+includes a number of real-world configurations that demonstrate how you can
+tune Qtile to your liking. (Feel free to issue a pull request to add your own
+configuration to the mix!)
+
+Testing your configuration
+--------------------------
+
+The best way to test changes to your configuration is with the provided Xephyr
+script. This will run Qtile with your ``config.py`` inside a nested X server
+and prevent your running instance of Qtile from crashing if something goes
+wrong.
-https://github.com/qtile/qtile-examples
+See :doc:`Hacking Qtile </manual/hacking>` for more information on using
+Xephyr.
View
@@ -4,9 +4,17 @@ Hacking Qtile
Requirements
------------
-If you plan to run the test suite, you will need `the Pry unit testing
-framework <https://github.com/cortesi/pry>`_, and the `Python X Library
-<http://python-xlib.sourceforge.net/>`_.
+* `Nose <http://nose.readthedocs.org/en/latest/>`_
+* `Python X Library <http://python-xlib.sourceforge.net/>`_
+* `Xephyr <http://www.freedesktop.org/wiki/Software/Xephyr>`_
+
+Running the test suite
+----------------------
+
+.. code-block:: bash
+
+ $ cd test
+ $ nosetests
Using Xephyr and the test suite
-------------------------------
@@ -26,12 +34,12 @@ Run it from the top-level of the repository, like this:
./scripts/xephyr
-In practice, the development cyclce looks something like this:
+In practice, the development cycle looks something like this:
* make minor code change
-* run appropriate test: ``pry ./test_module.uMySuite``
+* run appropriate test: ``nosetests --tests=test_module``
* GOTO 1, until hackage is complete
-* run entire test suite: ``pry``
+* run entire test suite: ``nosetests``
* commit
Resources

0 comments on commit 8c5ecb4

Please sign in to comment.