Diff of /readme.html [a70b3e] .. [588c4c] Maximize Restore

  Switch to side-by-side view

--- a/readme.html
+++ b/readme.html
@@ -321,82 +321,82 @@
 </style><div class="contents topic" id="table-of-contents">
 <p class="topic-title first">Table of Contents</p>
 <ul class="simple">
-<li><a class="reference internal" href="#license-and-contact-information" id="id4">License and Contact information</a></li>
-<li><a class="reference internal" href="#requirements" id="id5">Requirements</a></li>
-<li><a class="reference internal" href="#installation" id="id6">Installation</a><ul>
-<li><a class="reference internal" href="#why-doesn-t-the-windows-install-work" id="id7">Why doesn't the Windows install work?</a></li>
-<li><a class="reference internal" href="#why-doesn-t-pype-work-on-linux" id="id8">Why doesn't PyPE work on Linux?</a></li>
-<li><a class="reference internal" href="#why-isn-t-the-most-recent-pype-available-as-deb-or-rpm" id="id9">Why isn't the most recent PyPE available as deb or RPM?</a></li>
-<li><a class="reference internal" href="#why-doesn-t-pype-work-on-osx" id="id10">Why doesn't PyPE work on OSX?</a></li>
+<li><a class="reference internal" href="#license-and-contact-information" id="id2">License and Contact information</a></li>
+<li><a class="reference internal" href="#requirements" id="id3">Requirements</a></li>
+<li><a class="reference internal" href="#installation" id="id4">Installation</a><ul>
+<li><a class="reference internal" href="#why-doesn-t-the-windows-install-work" id="id5">Why doesn't the Windows install work?</a></li>
+<li><a class="reference internal" href="#why-doesn-t-pype-work-on-linux" id="id6">Why doesn't PyPE work on Linux?</a></li>
+<li><a class="reference internal" href="#why-isn-t-the-most-recent-pype-available-as-deb-or-rpm" id="id7">Why isn't the most recent PyPE available as deb or RPM?</a></li>
+<li><a class="reference internal" href="#why-doesn-t-pype-work-on-osx" id="id8">Why doesn't PyPE work on OSX?</a></li>
 </ul>
 </li>
-<li><a class="reference internal" href="#command-line-options" id="id11">Command Line Options</a><ul>
-<li><a class="reference internal" href="#last" id="id12">--last</a></li>
-<li><a class="reference internal" href="#unicode-and-ansi" id="id13">--unicode and --ansi</a></li>
-<li><a class="reference internal" href="#fontsize" id="id14">--fontsize</a></li>
-<li><a class="reference internal" href="#font" id="id15">--font</a></li>
-<li><a class="reference internal" href="#nothread" id="id16">--nothread</a></li>
-<li><a class="reference internal" href="#macros" id="id17">--macros</a></li>
-<li><a class="reference internal" href="#standalone" id="id18">--standalone</a></li>
-<li><a class="reference internal" href="#port" id="id19">--port</a></li>
-<li><a class="reference internal" href="#use-old-parser" id="id20">--use_old_parser</a></li>
+<li><a class="reference internal" href="#command-line-options" id="id9">Command Line Options</a><ul>
+<li><a class="reference internal" href="#last" id="id10">--last</a></li>
+<li><a class="reference internal" href="#unicode-and-ansi" id="id11">--unicode and --ansi</a></li>
+<li><a class="reference internal" href="#fontsize" id="id12">--fontsize</a></li>
+<li><a class="reference internal" href="#font" id="id13">--font</a></li>
+<li><a class="reference internal" href="#nothread" id="id14">--nothread</a></li>
+<li><a class="reference internal" href="#macros" id="id15">--macros</a></li>
+<li><a class="reference internal" href="#standalone" id="id16">--standalone</a></li>
+<li><a class="reference internal" href="#port" id="id17">--port</a></li>
+<li><a class="reference internal" href="#use-old-parser" id="id18">--use_old_parser</a></li>
 </ul>
 </li>
-<li><a class="reference internal" href="#pype-features-and-functionality" id="id21">PyPE features and functionality</a><ul>
-<li><a class="reference internal" href="#what-to-expect-when-coming-from-other-editors-ides" id="id22">What to expect when coming from other editors/IDEs</a></li>
-<li><a class="reference internal" href="#encoding-detection-for-opening-files" id="id23">Encoding detection for opening files</a></li>
-<li><a class="reference internal" href="#encoding-detection-for-saving-files" id="id24">Encoding detection for saving files</a></li>
-<li><a class="reference internal" href="#what-is-a-coding-directive" id="id25">What is a &quot;coding directive&quot;?</a></li>
-<li><a class="reference internal" href="#shells" id="id26">Shells</a></li>
-<li><a class="reference internal" href="#vim-options" id="id27">Vim options</a></li>
-<li><a class="reference internal" href="#using-options-realtime-options-for-syntax-checking-and-tool-updates" id="id28">Using Options -&gt; Realtime Options for syntax checking and tool updates</a></li>
-<li><a class="reference internal" href="#what-is-sloppy-cut-copy" id="id29">What is Sloppy Cut/Copy?</a></li>
-<li><a class="reference internal" href="#what-is-smart-paste" id="id30">What is Smart Paste?</a></li>
-<li><a class="reference internal" href="#what-do-the-different-options-in-the-filter-tool-do" id="id31">What do the different options in the Filter tool do?</a></li>
-<li><a class="reference internal" href="#how-do-i-update-the-default-settings-for-a-particular-document-type" id="id32">How do I update the default settings for a particular document type?</a></li>
-<li><a class="reference internal" href="#dictionaries-and-alphabets-for-the-spell-checker" id="id33">Dictionaries and alphabets for the Spell checker</a></li>
-<li><a class="reference internal" href="#how-does-one-pype-work" id="id34">How does &quot;One PyPE&quot; work?</a></li>
-<li><a class="reference internal" href="#what-the-heck-is-a-trigger" id="id35">What the heck is a Trigger?</a></li>
-<li><a class="reference internal" href="#find-replace-bars" id="id36">Find/Replace bars</a></li>
-<li><a class="reference internal" href="#what-happens-when-smart-case-is-enabled-during-a-replace" id="id37">What happens when &quot;Smart Case&quot; is enabled during a replace?</a></li>
-<li><a class="reference internal" href="#string-escapes-in-regular-expressions-and-multiline-searches" id="id38">String escapes in regular expressions and multiline searches?</a></li>
-<li><a class="reference internal" href="#how-do-i-use-the-todo-list" id="id39">How do I use the 'Todo' list?</a></li>
-<li><a class="reference internal" href="#labels-transforms-insert-comment" id="id40">Labels / Transforms -&gt; Insert Comment</a></li>
-<li><a class="reference internal" href="#what-are-the-known-issues-within-pype-s-parser" id="id41">What are the known issues within PyPE's parser?</a><ul>
-<li><a class="reference internal" href="#the-c-c-parser" id="id42">The C/C++ parser</a></li>
-<li><a class="reference internal" href="#the-python-parser" id="id43">The Python parser</a></li>
-<li><a class="reference internal" href="#tex-latex" id="id44">TeX/LaTeX</a></li>
-<li><a class="reference internal" href="#html-xml" id="id45">HTML/XML</a></li>
-<li><a class="reference internal" href="#label-parser" id="id46">Label Parser</a></li>
-<li><a class="reference internal" href="#name-line-expanded-state" id="id47">Name/Line Expanded State</a></li>
+<li><a class="reference internal" href="#pype-features-and-functionality" id="id19">PyPE features and functionality</a><ul>
+<li><a class="reference internal" href="#what-to-expect-when-coming-from-other-editors-ides" id="id20">What to expect when coming from other editors/IDEs</a></li>
+<li><a class="reference internal" href="#encoding-detection-for-opening-files" id="id21">Encoding detection for opening files</a></li>
+<li><a class="reference internal" href="#encoding-detection-for-saving-files" id="id22">Encoding detection for saving files</a></li>
+<li><a class="reference internal" href="#what-is-a-coding-directive" id="id23">What is a &quot;coding directive&quot;?</a></li>
+<li><a class="reference internal" href="#shells" id="id24">Shells</a></li>
+<li><a class="reference internal" href="#vim-options" id="id25">Vim options</a></li>
+<li><a class="reference internal" href="#using-options-realtime-options-for-syntax-checking-and-tool-updates" id="id26">Using Options -&gt; Realtime Options for syntax checking and tool updates</a></li>
+<li><a class="reference internal" href="#what-is-sloppy-cut-copy" id="id27">What is Sloppy Cut/Copy?</a></li>
+<li><a class="reference internal" href="#what-is-smart-paste" id="id28">What is Smart Paste?</a></li>
+<li><a class="reference internal" href="#what-do-the-different-options-in-the-filter-tool-do" id="id29">What do the different options in the Filter tool do?</a></li>
+<li><a class="reference internal" href="#how-do-i-update-the-default-settings-for-a-particular-document-type" id="id30">How do I update the default settings for a particular document type?</a></li>
+<li><a class="reference internal" href="#dictionaries-and-alphabets-for-the-spell-checker" id="id31">Dictionaries and alphabets for the Spell checker</a></li>
+<li><a class="reference internal" href="#how-does-one-pype-work" id="id32">How does &quot;One PyPE&quot; work?</a></li>
+<li><a class="reference internal" href="#what-the-heck-is-a-trigger" id="id33">What the heck is a Trigger?</a></li>
+<li><a class="reference internal" href="#find-replace-bars" id="id34">Find/Replace bars</a></li>
+<li><a class="reference internal" href="#what-happens-when-smart-case-is-enabled-during-a-replace" id="id35">What happens when &quot;Smart Case&quot; is enabled during a replace?</a></li>
+<li><a class="reference internal" href="#string-escapes-in-regular-expressions-and-multiline-searches" id="id36">String escapes in regular expressions and multiline searches?</a></li>
+<li><a class="reference internal" href="#how-do-i-use-the-todo-list" id="id37">How do I use the 'Todo' list?</a></li>
+<li><a class="reference internal" href="#labels-transforms-insert-comment" id="id38">Labels / Transforms -&gt; Insert Comment</a></li>
+<li><a class="reference internal" href="#what-are-the-known-issues-within-pype-s-parser" id="id39">What are the known issues within PyPE's parser?</a><ul>
+<li><a class="reference internal" href="#the-c-c-parser" id="id40">The C/C++ parser</a></li>
+<li><a class="reference internal" href="#the-python-parser" id="id41">The Python parser</a></li>
+<li><a class="reference internal" href="#tex-latex" id="id42">TeX/LaTeX</a></li>
+<li><a class="reference internal" href="#html-xml" id="id43">HTML/XML</a></li>
+<li><a class="reference internal" href="#label-parser" id="id44">Label Parser</a></li>
+<li><a class="reference internal" href="#name-line-expanded-state" id="id45">Name/Line Expanded State</a></li>
 </ul>
 </li>
-<li><a class="reference internal" href="#how-do-you-get-usable-calltips" id="id48">How do you get usable Calltips?</a></li>
-<li><a class="reference internal" href="#how-do-you-get-autocompletion" id="id49">How do you get autocompletion?</a></li>
-<li><a class="reference internal" href="#crlf-lf-cr-line-endings" id="id50">CRLF/LF/CR line endings</a></li>
-<li><a class="reference internal" href="#stcstyleeditor-py" id="id51">STCStyleEditor.py</a></li>
-<li><a class="reference internal" href="#expandable-collapsable-foldable-code" id="id52">Expandable/collapsable/foldable code</a></li>
-<li><a class="reference internal" href="#converting-between-tabs-and-spaces" id="id53">Converting between tabs and spaces</a></li>
+<li><a class="reference internal" href="#how-do-you-get-usable-calltips" id="id46">How do you get usable Calltips?</a></li>
+<li><a class="reference internal" href="#how-do-you-get-autocompletion" id="id47">How do you get autocompletion?</a></li>
+<li><a class="reference internal" href="#crlf-lf-cr-line-endings" id="id48">CRLF/LF/CR line endings</a></li>
+<li><a class="reference internal" href="#stcstyleeditor-py" id="id49">STCStyleEditor.py</a></li>
+<li><a class="reference internal" href="#expandable-collapsable-foldable-code" id="id50">Expandable/collapsable/foldable code</a></li>
+<li><a class="reference internal" href="#converting-between-tabs-and-spaces" id="id51">Converting between tabs and spaces</a></li>
 </ul>
 </li>
-<li><a class="reference internal" href="#how-do-i-program-my-own-macros" id="id54">How do I program my own macros?</a><ul>
-<li><a class="reference internal" href="#an-example-nontrivial-macro" id="id55">An example nontrivial macro</a></li>
-<li><a class="reference internal" href="#using-macros-as-code-snippets" id="id56">Using macros as code snippets</a></li>
-<li><a class="reference internal" href="#sample-macros-included-with-pype" id="id57">Sample Macros included with PyPE</a></li>
-<li><a class="reference internal" href="#non-white-background-colors" id="id58">Non-white background colors</a></li>
+<li><a class="reference internal" href="#how-do-i-program-my-own-macros" id="id52">How do I program my own macros?</a><ul>
+<li><a class="reference internal" href="#an-example-nontrivial-macro" id="id53">An example nontrivial macro</a></li>
+<li><a class="reference internal" href="#using-macros-as-code-snippets" id="id54">Using macros as code snippets</a></li>
+<li><a class="reference internal" href="#sample-macros-included-with-pype" id="id55">Sample Macros included with PyPE</a></li>
+<li><a class="reference internal" href="#non-white-background-colors" id="id56">Non-white background colors</a></li>
 </ul>
 </li>
-<li><a class="reference internal" href="#faq" id="id59">FAQ</a><ul>
-<li><a class="reference internal" href="#how-do-you-come-up-with-new-feature-ideas" id="id60">How do you come up with new feature ideas?</a></li>
-<li><a class="reference internal" href="#what-s-the-deal-with-the-version-numbering-scheme" id="id61">What's the deal with the version numbering scheme?</a></li>
-<li><a class="reference internal" href="#how-did-pype-come-about" id="id62">How did PyPE come about?</a></li>
+<li><a class="reference internal" href="#faq" id="id57">FAQ</a><ul>
+<li><a class="reference internal" href="#how-do-you-come-up-with-new-feature-ideas" id="id58">How do you come up with new feature ideas?</a></li>
+<li><a class="reference internal" href="#what-s-the-deal-with-the-version-numbering-scheme" id="id59">What's the deal with the version numbering scheme?</a></li>
+<li><a class="reference internal" href="#how-did-pype-come-about" id="id60">How did PyPE come about?</a></li>
 </ul>
 </li>
-<li><a class="reference internal" href="#thank-yous" id="id63">Thank Yous</a></li>
+<li><a class="reference internal" href="#thank-yous" id="id61">Thank Yous</a></li>
 </ul>
 </div>
 <div class="section" id="license-and-contact-information">
-<h1><a class="toc-backref" href="#id4">License and Contact information</a></h1>
+<h1><a class="toc-backref" href="#id2">License and Contact information</a></h1>
 <p><a class="reference external" href="http://pype.sourceforge.net">http://pype.sourceforge.net</a>
 <a class="reference external" href="http://come.to/josiah">http://come.to/josiah</a></p>
 <p>PyPE is copyright 2003-2006 Josiah Carlson.
@@ -406,20 +406,19 @@
 It is also included with this archive as <a class="reference external" href="gpl.txt">gpl.txt</a>.</p>
 <p>The portions of STCStyleEditor.py included in StyleSetter.py, which is used to
 support styles, was released under the wxWindows license and is copyright (c)
-2001 - 2002 Riaan Booysen.  The wxWindows license and the LGPL license it
-references are included with this software as <a class="reference external" href="wxwindows.txt">wxwindows.txt</a>
-and <a class="reference external" href="lgpl.txt">lgpl.txt</a>.</p>
+2001 - 2002 Riaan Booysen.</p>
+<p>Any software that was originally licensed as wxWindows or LGPL v2 I have
+relicensed as GPL v2 as is allowed under both the wxWindows and LGPL licenses.</p>
 <p>The included stc-styles.rc.cfg was modified from the original version in order
 to not cause exceptions during style changes, as well as adding other language
 style definitions, and was originally distributed with wxPython version
 2.4.1.2 for Python 2.2 .</p>
-<p>If you do not also receive a copy of <a class="reference external" href="gpl.txt">gpl.txt</a>,
-<a class="reference external" href="wxwindows.txt">wxwindows.txt</a>, and <a class="reference external" href="lgpl.txt">lgpl.txt</a> with your version
+<p>If you do not also receive a copy of <a class="reference external" href="gpl.txt">gpl.txt</a>, with your version
 of this software, please inform me of the violation at either web page at the
 top of this document.</p>
 </div>
 <div class="section" id="requirements">
-<h1><a class="toc-backref" href="#id5">Requirements</a></h1>
+<h1><a class="toc-backref" href="#id3">Requirements</a></h1>
 <p>Either a machine running Python and wxPython, or a Windows machine that can
 run the binaries should be sufficient.  Initial revisions of PyPE were
 developed on a PII-400 with 384 megs of ram, but it should work on any machine
@@ -431,7 +430,7 @@
 bug report on <a class="reference external" href="http://sourceforge.net/projects/pype">http://sourceforge.net/projects/pype</a> .</p>
 </div>
 <div class="section" id="installation">
-<h1><a class="toc-backref" href="#id6">Installation</a></h1>
+<h1><a class="toc-backref" href="#id4">Installation</a></h1>
 <p>If you have Python 2.3 or later as well as wxPython 2.6.3 or later, you can
 extract PyPE-X.Y.Z-src.zip anywhere and run it by double-clicking on pype.py
 or pype.pyw .  Note that the 2.6.3.3 ansi build of wxPython has issues with
@@ -458,7 +457,7 @@
 installation, you should have the necessary dlls to make PyPE run (Python is
 shipped with the 7.1 runtime, and wxPython 2.7+ ships with the gdi plus dll).</p>
 <div class="section" id="why-doesn-t-the-windows-install-work">
-<h2><a class="toc-backref" href="#id7">Why doesn't the Windows install work?</a></h2>
+<h2><a class="toc-backref" href="#id5">Why doesn't the Windows install work?</a></h2>
 <p>Depending on your platform, it may or may not work.  It works for me on
 Windows 2k and XP.  Most problems people have is that they mistakenly extract
 library.zip, which they shouldn't do (and in recent PyPE binary releases
@@ -466,7 +465,7 @@
 which case an error message should inform you of which DLL you are missing.</p>
 </div>
 <div class="section" id="why-doesn-t-pype-work-on-linux">
-<h2><a class="toc-backref" href="#id8">Why doesn't PyPE work on Linux?</a></h2>
+<h2><a class="toc-backref" href="#id6">Why doesn't PyPE work on Linux?</a></h2>
 <p>PyPE 2.5+ has been tested on Ubuntu 6.06 with...</p>
 <ul class="simple">
 <li>python-wxversion_2.6.1.2ubuntu2_all.deb</li>
@@ -498,7 +497,7 @@
 case&quot;.</p>
 </div>
 <div class="section" id="why-isn-t-the-most-recent-pype-available-as-deb-or-rpm">
-<h2><a class="toc-backref" href="#id9">Why isn't the most recent PyPE available as deb or RPM?</a></h2>
+<h2><a class="toc-backref" href="#id7">Why isn't the most recent PyPE available as deb or RPM?</a></h2>
 <p>Short answer: it's a pain in the ass.</p>
 <p>Longer answer: I'm not the maintainer for the PyPE package in any of the
 Ubuntu repositories, but have recently discovered that PyPE has a newer
@@ -518,7 +517,7 @@
 to rpm packages.</p>
 </div>
 <div class="section" id="why-doesn-t-pype-work-on-osx">
-<h2><a class="toc-backref" href="#id10">Why doesn't PyPE work on OSX?</a></h2>
+<h2><a class="toc-backref" href="#id8">Why doesn't PyPE work on OSX?</a></h2>
 <p>Aside from &quot;PyPE works on OSX&quot; (or &quot;almost works&quot;) from 2 users, I don't know
 what may be causing PyPE to not work in OSX.  If you send bug reports with
 tracebacks, etc., we can probably figure out what is going on and how we can
@@ -532,15 +531,15 @@
 </div>
 </div>
 <div class="section" id="command-line-options">
-<h1><a class="toc-backref" href="#id11">Command Line Options</a></h1>
+<h1><a class="toc-backref" href="#id9">Command Line Options</a></h1>
 <div class="section" id="last">
-<h2><a class="toc-backref" href="#id12">--last</a></h2>
+<h2><a class="toc-backref" href="#id10">--last</a></h2>
 <p>When PyPE is run with the '--last' command line option, PyPE will attempt to
 load all documents that were opened the last time you shut down PyPE.  This is
 equivalent to starting up PyPE and using File-&gt;Open Last .</p>
 </div>
 <div class="section" id="unicode-and-ansi">
-<h2><a class="toc-backref" href="#id13">--unicode and --ansi</a></h2>
+<h2><a class="toc-backref" href="#id11">--unicode and --ansi</a></h2>
 <p>If PyPE is started up with the --unicode or --ansi command line options, it
 will attempt to use the unicode or ansi versions of wxPython respectively.  On
 failure, it will display to the user with a failure notice.  These options
@@ -548,7 +547,7 @@
 <tt class="docutils literal">hasattr(sys, 'frozen')</tt> is true.</p>
 </div>
 <div class="section" id="fontsize">
-<h2><a class="toc-backref" href="#id14">--fontsize</a></h2>
+<h2><a class="toc-backref" href="#id12">--fontsize</a></h2>
 <p>If you provide <tt class="docutils literal"><span class="pre">--fontsize=12</span></tt>, PyPE will change the font size for all open
 documents to 12.  The default font size that PyPE uses is 10.  If you want
 text to be bigger, use a number larger than 10.  If you want text to be
@@ -556,38 +555,38 @@
 proportional to the font size specified.</p>
 </div>
 <div class="section" id="font">
-<h2><a class="toc-backref" href="#id15">--font</a></h2>
+<h2><a class="toc-backref" href="#id13">--font</a></h2>
 <p>If you provide <tt class="docutils literal"><span class="pre">--font=Lucida-Console</span></tt>, PyPE will change the font for all
 open documents to &quot;Lucida Console&quot;.  The default font that PyPE uses is
 Courier New.</p>
 </div>
 <div class="section" id="nothread">
-<h2><a class="toc-backref" href="#id16">--nothread</a></h2>
+<h2><a class="toc-backref" href="#id14">--nothread</a></h2>
 <p>This command line option will disable the threaded parser, which has caused
 problems on some platforms.  This will reduce the accuracy of the tools in
 the &quot;Tools&quot; menu, due to the faster and not necessarily correct parser being
 used in its place.</p>
 </div>
 <div class="section" id="macros">
-<h2><a class="toc-backref" href="#id17">--macros</a></h2>
+<h2><a class="toc-backref" href="#id15">--macros</a></h2>
 <p>PyPE 2.6 has what I would consider to be a fully-functioning macro system.
 The Python 2.5 <tt class="docutils literal"><span class="pre">--macros</span></tt> command line option is now ignored because macros
 are enabled by default in 2.6+.</p>
 </div>
 <div class="section" id="standalone">
-<h2><a class="toc-backref" href="#id18">--standalone</a></h2>
+<h2><a class="toc-backref" href="#id16">--standalone</a></h2>
 <p>Providing this command line option will use the path in which the PyPE source
 or binary is for where PyPE's state is saved (document history, menu
 configuration, etc.).  This will allow for 'embedded' applications.</p>
 </div>
 <div class="section" id="port">
-<h2><a class="toc-backref" href="#id19">--port</a></h2>
+<h2><a class="toc-backref" href="#id17">--port</a></h2>
 <p>Providing this command line option will allow you to choose the port number
 that PyPE uses when Options -&gt; One PyPE is checked.  The default port number
 is 9999.</p>
 </div>
 <div class="section" id="use-old-parser">
-<h2><a class="toc-backref" href="#id20">--use_old_parser</a></h2>
+<h2><a class="toc-backref" href="#id18">--use_old_parser</a></h2>
 <p>This uses the old parser (PyPE 2.8.8 and a few revisions prior).  It is faster
 than the modern parser, but it's not as accurrate, nor does it provide all of
 the scope introspection capabilities that the new compiler.ast-based parser
@@ -595,9 +594,9 @@
 </div>
 </div>
 <div class="section" id="pype-features-and-functionality">
-<h1><a class="toc-backref" href="#id21">PyPE features and functionality</a></h1>
+<h1><a class="toc-backref" href="#id19">PyPE features and functionality</a></h1>
 <div class="section" id="what-to-expect-when-coming-from-other-editors-ides">
-<h2><a class="toc-backref" href="#id22">What to expect when coming from other editors/IDEs</a></h2>
+<h2><a class="toc-backref" href="#id20">What to expect when coming from other editors/IDEs</a></h2>
 <p>While PyPE has quite a few of the features that one would expect from an IDE,
 I do not consider PyPE to be an IDE; I consider PyPE to be an editor.  The
 semantic difference between the two in my mind is a bit wishy-washy, so I'll
@@ -641,7 +640,7 @@
 </ol>
 </div>
 <div class="section" id="encoding-detection-for-opening-files">
-<h2><a class="toc-backref" href="#id23">Encoding detection for opening files</a></h2>
+<h2><a class="toc-backref" href="#id21">Encoding detection for opening files</a></h2>
 <p>If you are using the Unicode version of PyPE, when opening a file, PyPE will
 attempt to decode your file using the following encodings in order:</p>
 <ol class="arabic simple">
@@ -664,7 +663,7 @@
 recommended for all xml/html anyways.</p>
 </div>
 <div class="section" id="encoding-detection-for-saving-files">
-<h2><a class="toc-backref" href="#id24">Encoding detection for saving files</a></h2>
+<h2><a class="toc-backref" href="#id22">Encoding detection for saving files</a></h2>
 <p>If you are using the Unicode version of PyPE, when saving a file, PyPE will
 attempt to encode your file using the following encodings in order:</p>
 <ol class="arabic simple">
@@ -687,7 +686,7 @@
 <p>In 2.6.3 and earlier, PyPE would try 1, 2, 3, then 5.</p>
 </div>
 <div class="section" id="what-is-a-coding-directive">
-<h2><a class="toc-backref" href="#id25">What is a &quot;coding directive&quot;?</a></h2>
+<h2><a class="toc-backref" href="#id23">What is a &quot;coding directive&quot;?</a></h2>
 <p>If in the first two lines of your source file (all initial blank lines being
 ignored), the following regular expression matches something:</p>
 <pre class="literal-block">
@@ -705,7 +704,7 @@
 XML-style declarations in XML or HTML source.</p>
 </div>
 <div class="section" id="shells">
-<h2><a class="toc-backref" href="#id26">Shells</a></h2>
+<h2><a class="toc-backref" href="#id24">Shells</a></h2>
 <p>PyPE includes the ability to open up Python or command shells.  See the File
 menu.  To choose which Python is used in the &quot;New Python Shell&quot; or &quot;Run
 Selected Code&quot;, see &quot;Options -&gt; Shell Options&quot;.</p>
@@ -726,7 +725,7 @@
 improve their functionality, but I've not had time (in over 2 years).</p>
 </div>
 <div class="section" id="vim-options">
-<h2><a class="toc-backref" href="#id27">Vim options</a></h2>
+<h2><a class="toc-backref" href="#id25">Vim options</a></h2>
 <p>When opening up a file that you have never opened before, or whose history you
 have cleared by closing and removing it from the &quot;Recently Open&quot; list in the
 Documents tab, PyPE will scan the first and last 20 lines of the file for
@@ -738,7 +737,7 @@
 <p>If there exists both sw and sts options, sw will be preferred.</p>
 </div>
 <div class="section" id="using-options-realtime-options-for-syntax-checking-and-tool-updates">
-<h2><a class="toc-backref" href="#id28">Using Options -&gt; Realtime Options for syntax checking and tool updates</a></h2>
+<h2><a class="toc-backref" href="#id26">Using Options -&gt; Realtime Options for syntax checking and tool updates</a></h2>
 <p>Syntax checking is always enabled for Python shells, and will highlight the
 first line with an error as you type (it is actually checks shortly after you
 stop typing), using the same indicator as defined in Options -&gt; Shell Options.</p>
@@ -759,14 +758,14 @@
 changed since the last time either operation was scheduled.</p>
 </div>
 <div class="section" id="what-is-sloppy-cut-copy">
-<h2><a class="toc-backref" href="#id29">What is Sloppy Cut/Copy?</a></h2>
+<h2><a class="toc-backref" href="#id27">What is Sloppy Cut/Copy?</a></h2>
 <p>When selecting multiple lines for a cut/copy operation, Sloppy Cut/Copy will
 select the entirety of partially selected lines.  This saves the user from
 having to meticulously select the start and end points of multi-line
 selections.</p>
 </div>
 <div class="section" id="what-is-smart-paste">
-<h2><a class="toc-backref" href="#id30">What is Smart Paste?</a></h2>
+<h2><a class="toc-backref" href="#id28">What is Smart Paste?</a></h2>
 <p>Smart Paste is two functionalities in one.</p>
 <ol class="arabic simple">
 <li>When pasting multiple lines into a currently indented region, it will
@@ -780,7 +779,7 @@
 </ol>
 </div>
 <div class="section" id="what-do-the-different-options-in-the-filter-tool-do">
-<h2><a class="toc-backref" href="#id31">What do the different options in the Filter tool do?</a></h2>
+<h2><a class="toc-backref" href="#id29">What do the different options in the Filter tool do?</a></h2>
 <dl class="docutils">
 <dt>subsequence</dt>
 <dd>will match things like <tt class="docutils literal">us.et</tt> to <tt class="docutils literal">UserString.ExpandTabs</tt></dd>
@@ -827,7 +826,7 @@
 fairly precise.</p>
 </div>
 <div class="section" id="how-do-i-update-the-default-settings-for-a-particular-document-type">
-<h2><a class="toc-backref" href="#id32">How do I update the default settings for a particular document type?</a></h2>
+<h2><a class="toc-backref" href="#id30">How do I update the default settings for a particular document type?</a></h2>
 <ol class="arabic simple">
 <li>Close all open documents of the particular type whose default settings you
 want to update.</li>
@@ -849,7 +848,7 @@
 specific type, follow the above 5 steps.</p>
 </div>
 <div class="section" id="dictionaries-and-alphabets-for-the-spell-checker">
-<h2><a class="toc-backref" href="#id33">Dictionaries and alphabets for the Spell checker</a></h2>
+<h2><a class="toc-backref" href="#id31">Dictionaries and alphabets for the Spell checker</a></h2>
 <p>You can create/delete custom dictionaries via the +/- buttons right next to
 the &quot;Custom Dictionaries:&quot; section.  You can add words to these custom
 dictionaries by &quot;Check&quot;ing your document for misspellings, checking all of the
@@ -873,7 +872,7 @@
 dictionaries, and any that match become suggestions.</p>
 </div>
 <div class="section" id="how-does-one-pype-work">
-<h2><a class="toc-backref" href="#id34">How does &quot;One PyPE&quot; work?</a></h2>
+<h2><a class="toc-backref" href="#id32">How does &quot;One PyPE&quot; work?</a></h2>
 <p>If &quot;One PyPE&quot; is selected, it will remove the file named 'nosocket' from the
 path in which PyPE is running from (if it exists), and start a listening
 socket on 127.0.0.1:9999 .  If &quot;One PyPE&quot; is deselected, it will create a file
@@ -891,7 +890,7 @@
 sockets, create a file called 'nosocket' and make it read-only to PyPE.</p>
 </div>
 <div class="section" id="what-the-heck-is-a-trigger">
-<h2><a class="toc-backref" href="#id35">What the heck is a Trigger?</a></h2>
+<h2><a class="toc-backref" href="#id33">What the heck is a Trigger?</a></h2>
 <p>Let us say that you writing a web page from scratch.  Let us also say that
 typing in everything has gotten a bit tiresome, so you want to offer yourself
 a few macro-like expansions, like 'img' -&gt; '&lt;img src=&quot;&quot;&gt;'.</p>
@@ -917,14 +916,14 @@
 standard <tt class="docutils literal">\n</tt>.</p>
 </div>
 <div class="section" id="find-replace-bars">
-<h2><a class="toc-backref" href="#id36">Find/Replace bars</a></h2>
+<h2><a class="toc-backref" href="#id34">Find/Replace bars</a></h2>
 <p>If you have ' or &quot; as the first character in a find or find/replace entry, and
 what you entered is a proper string declaration in Python, PyPE will use the
 compiler module to parse and discover the the string.  For example, to
 discover LF characters, use <tt class="docutils literal">&quot;\n&quot;</tt>, including quotes.</p>
 </div>
 <div class="section" id="what-happens-when-smart-case-is-enabled-during-a-replace">
-<h2><a class="toc-backref" href="#id37">What happens when &quot;Smart Case&quot; is enabled during a replace?</a></h2>
+<h2><a class="toc-backref" href="#id35">What happens when &quot;Smart Case&quot; is enabled during a replace?</a></h2>
 <p>If the found string is all upper or lower case, it will be replaced by a
 string that is also all upper or lower case.</p>
 <p>Else if the length of the found string is the same length as the replacement
@@ -949,7 +948,7 @@
 its replacement will have the first letter be upper or lowercase respectively.</p>
 </div>
 <div class="section" id="string-escapes-in-regular-expressions-and-multiline-searches">
-<h2><a class="toc-backref" href="#id38">String escapes in regular expressions and multiline searches?</a></h2>
+<h2><a class="toc-backref" href="#id36">String escapes in regular expressions and multiline searches?</a></h2>
 <p>When using the 'Search' tab, you can use standard Python strings with escapes
 and quote marks just like when you use the find/replace bars with one minor
 difference; all searched data is normalized to have <tt class="docutils literal">\n</tt> line endings
@@ -961,7 +960,7 @@
 checked or unchecked).</p>
 </div>
 <div class="section" id="how-do-i-use-the-todo-list">
-<h2><a class="toc-backref" href="#id39">How do I use the 'Todo' list?</a></h2>
+<h2><a class="toc-backref" href="#id37">How do I use the 'Todo' list?</a></h2>
 <p>On a line by itself (any amount of leading spaces), place something that
 matches the following regular expression: <tt class="docutils literal"><span class="pre">([a-zA-Z0-9</span> <span class="pre">]+):(.*)</span></tt> and is
 immediately proceeded with a language-specific single-line comment (<tt class="docutils literal">#</tt>,
@@ -988,7 +987,7 @@
 with the option to only recognize these &quot;strict&quot; todos.</p>
 </div>
 <div class="section" id="labels-transforms-insert-comment">
-<h2><a class="toc-backref" href="#id40">Labels / Transforms -&gt; Insert Comment</a></h2>
+<h2><a class="toc-backref" href="#id38">Labels / Transforms -&gt; Insert Comment</a></h2>
 <p>When you use Transforms -&gt; Insert Comment, you create a comment of the form
 (for example in Python):</p>
 <pre class="literal-block">
@@ -1005,9 +1004,9 @@
 double dash around the comment (for consistency and readability).</p>
 </div>
 <div class="section" id="what-are-the-known-issues-within-pype-s-parser">
-<h2><a class="toc-backref" href="#id41">What are the known issues within PyPE's parser?</a></h2>
+<h2><a class="toc-backref" href="#id39">What are the known issues within PyPE's parser?</a></h2>
 <div class="section" id="the-c-c-parser">
-<h3><a class="toc-backref" href="#id42">The C/C++ parser</a></h3>
+<h3><a class="toc-backref" href="#id40">The C/C++ parser</a></h3>
 <p>PyPE 2.6.1 and later added a C/C++ parser that uses a combination of regular
 expressions and some post-processing to extract function definition
 information.  Note that it can handle things like the following and their
@@ -1044,7 +1043,7 @@
 and calltips.</p>
 </div>
 <div class="section" id="the-python-parser">
-<h3><a class="toc-backref" href="#id43">The Python parser</a></h3>
+<h3><a class="toc-backref" href="#id41">The Python parser</a></h3>
 <p>For Python source files, if given a syntactically correct Python source file,
 the Python parser should work without issue (as long as --nothread is not
 provided), though it may not be quite as fast as desired (where fast is &lt; .1
@@ -1080,16 +1079,16 @@
 with a bad source file).</p>
 </div>
 <div class="section" id="tex-latex">
-<h3><a class="toc-backref" href="#id44">TeX/LaTeX</a></h3>
+<h3><a class="toc-backref" href="#id42">TeX/LaTeX</a></h3>
 <p>In TeX/LaTeX, PyPE extracts \(sub)*section and \label headings, todo items,
 and labels (defined below).</p>
 </div>
 <div class="section" id="html-xml">
-<h3><a class="toc-backref" href="#id45">HTML/XML</a></h3>
+<h3><a class="toc-backref" href="#id43">HTML/XML</a></h3>
 <p>PyPE only extracts todo items and labels (defined below).</p>
 </div>
 <div class="section" id="label-parser">
-<h3><a class="toc-backref" href="#id46">Label Parser</a></h3>
+<h3><a class="toc-backref" href="#id44">Label Parser</a></h3>
 <p>Knowing where to insert a label (in the trees) is tricky work, and we can only
 generally choose the right place to insert labels in one of the following two
 cases:</p>
@@ -1144,7 +1143,7 @@
 better to show too many labels in a particular context than too few.</p>
 </div>
 <div class="section" id="name-line-expanded-state">
-<h3><a class="toc-backref" href="#id47">Name/Line Expanded State</a></h3>
+<h3><a class="toc-backref" href="#id45">Name/Line Expanded State</a></h3>
 <p>PyPE will only be able to remember those items that were expanded, selected or
 first visible (to keep the scrollbar consistant) if the names hadn't been
 changed.  Say that you had an item named <tt class="docutils literal">class foo:</tt> that was expanded
@@ -1166,18 +1165,18 @@
 </div>
 </div>
 <div class="section" id="how-do-you-get-usable-calltips">
-<h2><a class="toc-backref" href="#id48">How do you get usable Calltips?</a></h2>
+<h2><a class="toc-backref" href="#id46">How do you get usable Calltips?</a></h2>
 <p>Hit F5.  This will also rebuild the browsable source tree, autocomplete
 listing, filter, and todo list.</p>
 </div>
 <div class="section" id="how-do-you-get-autocompletion">
-<h2><a class="toc-backref" href="#id49">How do you get autocompletion?</a></h2>
+<h2><a class="toc-backref" href="#id47">How do you get autocompletion?</a></h2>
 <p>Easy.  In the 'Document' menu, there is an entry for 'Show autocomplete'.
 Make sure there is a check by it, and you are set.  If you want to get a new
 or updated listing of functions, hit the F5 key on your keyboard.</p>
 </div>
 <div class="section" id="crlf-lf-cr-line-endings">
-<h2><a class="toc-backref" href="#id50">CRLF/LF/CR line endings</a></h2>
+<h2><a class="toc-backref" href="#id48">CRLF/LF/CR line endings</a></h2>
 <p>PyPE will attempt to figure out what kind of file was opened, it does this by
 counting the number of different kinds of line endings.  Which ever line
 ending appears the most in an open file will set the line ending support for
@@ -1191,7 +1190,7 @@
 'Document' menu.</p>
 </div>
 <div class="section" id="stcstyleeditor-py">
-<h2><a class="toc-backref" href="#id51">STCStyleEditor.py</a></h2>
+<h2><a class="toc-backref" href="#id49">STCStyleEditor.py</a></h2>
 <p>As I didn't write this, I can offer basically no support for it.  It seems to
 work to edit python colorings, and if you edit some of the last 30 or so lines
 of it, you can actually use the editor to edit some of the other styles that
@@ -1201,7 +1200,7 @@
 As it is a known-good version, use it.</p>
 </div>
 <div class="section" id="expandable-collapsable-foldable-code">
-<h2><a class="toc-backref" href="#id52">Expandable/collapsable/foldable code</a></h2>
+<h2><a class="toc-backref" href="#id50">Expandable/collapsable/foldable code</a></h2>
 <p>Since the beginning, there have been expandable and collapsable scopes thanks
 to wxStyledTextCtrl.  How to use them...
 Given the below...</p>
@@ -1226,7 +1225,7 @@
 Play around with them, you may like it.</p>
 </div>
 <div class="section" id="converting-between-tabs-and-spaces">
-<h2><a class="toc-backref" href="#id53">Converting between tabs and spaces</a></h2>
+<h2><a class="toc-backref" href="#id51">Converting between tabs and spaces</a></h2>
 <p>So, you got tabs and you want spaces, or you have spaces and want to make them
 tabs.  As it is not a menu option, you're probably wondering &quot;how in the hell
 am I going to do this&quot;.  Well, if you read the above stuff about string
@@ -1240,7 +1239,7 @@
 </div>
 </div>
 <div class="section" id="how-do-i-program-my-own-macros">
-<h1><a class="toc-backref" href="#id54">How do I program my own macros?</a></h1>
+<h1><a class="toc-backref" href="#id52">How do I program my own macros?</a></h1>
 <p>Users of PyPE 2.5.1 (a test release) and later will have the ability to
 record, edit, playback, and delete macros.  Most keyboard related tasks are
 recorded (typing, keyboard movement, selection, cut, copy, paste, etc.), as
@@ -1362,7 +1361,7 @@
 </li>
 </ol>
 <div class="section" id="an-example-nontrivial-macro">
-<h2><a class="toc-backref" href="#id55">An example nontrivial macro</a></h2>
+<h2><a class="toc-backref" href="#id53">An example nontrivial macro</a></h2>
 <p>When I was writing macro support, I would have found macros to be quite
 convenient for developing macros.  What do I mean?  Let us say that I wanted
 to turn a line that read (from main_window_callback.c in the gPHPedit sources):</p>
@@ -1393,7 +1392,7 @@
 but that shouldn't be terribly difficult.</p>
 </div>
 <div class="section" id="using-macros-as-code-snippets">
-<h2><a class="toc-backref" href="#id56">Using macros as code snippets</a></h2>
+<h2><a class="toc-backref" href="#id54">Using macros as code snippets</a></h2>
 <ol class="arabic simple">
 <li>Create a macro.</li>
 <li>Paste the content of your snippet into a global variable in the macro and
@@ -1420,7 +1419,7 @@
 </pre>
 </div>
 <div class="section" id="sample-macros-included-with-pype">
-<h2><a class="toc-backref" href="#id57">Sample Macros included with PyPE</a></h2>
+<h2><a class="toc-backref" href="#id55">Sample Macros included with PyPE</a></h2>
 <p>PyPE includes a handful of sample macros to give you some idea of what works
 and what doesn't.  The most important ones you should look at are the various
 Timeout macros.  They will show you what things will and won't stop after the
@@ -1429,16 +1428,16 @@
 don't perform any system calls that could take a long time to finish.</p>
 </div>
 <div class="section" id="non-white-background-colors">
-<h2><a class="toc-backref" href="#id58">Non-white background colors</a></h2>
+<h2><a class="toc-backref" href="#id56">Non-white background colors</a></h2>
 <p>In PyPE 2.8.6, the stylesetter now has support for non-white background
 colors.  To set a non-white background color, change the 'backcol' value in
 the proper common.defs.* in your 'stc-styles.rc.cfg'.</p>
 </div>
 </div>
 <div class="section" id="faq">
-<h1><a class="toc-backref" href="#id59">FAQ</a></h1>
+<h1><a class="toc-backref" href="#id57">FAQ</a></h1>
 <div class="section" id="how-do-you-come-up-with-new-feature-ideas">
-<h2><a class="toc-backref" href="#id60">How do you come up with new feature ideas?</a></h2>
+<h2><a class="toc-backref" href="#id58">How do you come up with new feature ideas?</a></h2>
 <p>Every once and a while, I'll be editing with PyPE, and I'll say, &quot;hey, it
 would be neat if I could do X with PyPE&quot;.  This is rare, though it has
 produced things like the dragable document list, spell check, customizable
@@ -1472,7 +1471,7 @@
 welcome your feedback.</p>
 </div>
 <div class="section" id="what-s-the-deal-with-the-version-numbering-scheme">
-<h2><a class="toc-backref" href="#id61">What's the deal with the version numbering scheme?</a></h2>
+<h2><a class="toc-backref" href="#id59">What's the deal with the version numbering scheme?</a></h2>
 <p>Early in development, PyPE raised version numbers very quickly.  From 1.0 to
 1.5, not much more than 2 months passed.  In that time, most of the major
 initial architectural changes that were to happen, happened.  This is not the
@@ -1500,7 +1499,7 @@
 whether or not anyone would even want to use the feature (even me).</p>
 </div>
 <div class="section" id="how-did-pype-come-about">
-<h2><a class="toc-backref" href="#id62">How did PyPE come about?</a></h2>
+<h2><a class="toc-backref" href="#id60">How did PyPE come about?</a></h2>
 <p>The beginnings of PyPE were written from 10:30PM on the 2nd of July through
 10:30PM on the 3rd of July, 2003.  Additional features were put together on
 the 4th of July along with some bug fixing and more testing for version 1.0.
@@ -1524,7 +1523,7 @@
 </div>
 </div>
 <div class="section" id="thank-yous">
-<h1><a class="toc-backref" href="#id63">Thank Yous</a></h1>
+<h1><a class="toc-backref" href="#id61">Thank Yous</a></h1>
 <p>Certainly there are some people I should thank, because without them, the
 piece of software you are using right now, just wouldn't be possible.</p>
 <p>Guido van Rossum - without Guido, not only would I not have Python, I also