Skip to main content

The CodeChat system for software documentation

Project description

Welcome to CodeChat, a programmer’s word processor. CodeChat encourages literate programming by transforming source files into web pages and by providing a powerful editor which synchronizes between the source code view and the web view of a document. CodeChat transforms plain-text source code into a beautiful and descriptive document, allowing you to record your ideas, helpful hyperlinks to on-line resources, include expressive images and diagrams, and much more.


First, install pip if you don’t yet have it. Then, from a command prompt, run pip install -U CodeChat. The -U flag upgrades CodeChat to the latest version if it’s already installed.

Next install Enki, which hosts the CodeChat system.


Open some source code of a supported format [1]. In the Settings | Settings | CodeChat panel, click Enable then OK. Now, any properly-formatted comments will be interpreted as ReST. For example:

Source code CodeChat results
// ReST_ works *here*.
//But not here -- a space must follow the comment.
/* Not here either. Only single-line comments work. */
a = 1; // Not here either. Comments must be on a
b = 2; // separate line, not following code.

ReST works here.

//But not here -- a space must follow the comment.
/* Not here either. Only single-line comments work. */
a = 1; // Not here either. Comments must be on a
b = 2; // separate line, not following code.


“Sphinx is a tool that makes it easy to create intelligent and beautiful documentation” [2]. It provides additional features, including the ability to link together many documents (such as all the files in a program’s source code). To use Sphinx with Enki:

  1. Go to Settings | Settings | CodeChat and enable Sphinx and CodeChat.
  2. Choose a project directory, which contains source code to document.
  3. Click OK. Then, open a source file in the project directory you select.
  4. Open the Preview pane, where the source code will be displayed.
[1]Currently, only single-line comments in C/C++, Python, reST, assembly (.s), BASH scripts, PHP, MATLAB scripts, DOS batch (.bat) files, .ini, and .iss files are supported.


“reStructuredText is an easy-to-read, what-you-see-is-what-you-get plaintext markup syntax” [3]. Helpful pages:



This is a fairly basic implementation; much improvement is needed! Please use the issue tracker to report bugs or request features; even better, or contribute to the code at the CodeChat homepage!

Recent changes

  • Development version:
    • Update based on modern usage.
    • Update docs.
    • Remove unused PyQt dependencies.
    • Modernize documentation style in
  • 0.0.17, 17-Nov-2014:
    • Support Sphinx versions before 1.2.
    • Move non-CodeChat templates to Enki.
  • 0.0.16 - 0.0.13, 11-Nov-2014:

    • Improved Sphinx template: doesn’t replace default.css.
    • Updated CSS to work better with docutils.
  • 0.0.12, released 1-Sep-2014:

    • Fixes so that CodeChat’s Sphinx extension now works.
    • File encoding can now be specified.
    • Installaiton instructions added and docs reworked.
  • 0.0.11, released 1-May-2014:

    • Fixed Unicode errors.
    • Removed incorrect extra spacing between code and comments.
    • Fixed unit tests and added a few more.
    • Removed unused CodeLink directive.
  • 0.0.10, released 17-Apr-2014:

    • Revamped packaging.
    • Updated docs.
    • Used .. instead of marker to indent comments, producing cleaner ReST.
    • Split CodeToRest into CodeToRest, CodeToRestSphinx modules.


Copyright (C) 2012-2014 Bryan A. Jones.

This file is part of CodeChat.

CodeChat is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

CodeChat is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with CodeChat. If not, see <>.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
CodeChat-0.0.19a1-py2-none-any.whl (69.7 kB) Copy SHA256 hash SHA256 Wheel 2.7 (52.2 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page