<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://community.activestate.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>ActiveState Community Site - Macro to start remote debugging for current file - Comments</title>
 <link>http://community.activestate.com/forum-topic/macro-to-start-remote-deb</link>
 <description>Comments for &quot;Macro to start remote debugging for current file&quot;</description>
 <language>en</language>
<item>
 <title>Good stuff!</title>
 <link>http://community.activestate.com/forum-topic/macro-to-start-remote-deb#comment-1801</link>
 <description>&lt;p&gt;Things to look forward to.  Thanks for the quick pick-me-up!&lt;/p&gt;
&lt;p&gt;~&lt;/p&gt;
</description>
 <pubDate>Thu, 24 May 2007 21:02:35 -0500</pubDate>
 <dc:creator>MizAtServercave</dc:creator>
 <guid isPermaLink="false">comment 1801 at http://community.activestate.com</guid>
</item>
<item>
 <title>Indeed</title>
 <link>http://community.activestate.com/forum-topic/macro-to-start-remote-deb#comment-1799</link>
 <description>&lt;p&gt;Yes, this may eventually be rolled into the Komodo debug menu (likely after Komodo 4.2) and be integrated to use the existing Komodo connection manager. The ability is there currently for this, but the API&#039;s and architecture need work to make this easily accessible.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br /&gt;
Todd&lt;/p&gt;
</description>
 <pubDate>Thu, 24 May 2007 20:08:25 -0500</pubDate>
 <dc:creator>ToddW</dc:creator>
 <guid isPermaLink="false">comment 1799 at http://community.activestate.com</guid>
</item>
<item>
 <title>Very good head-start!</title>
 <link>http://community.activestate.com/forum-topic/macro-to-start-remote-deb#comment-1798</link>
 <description>&lt;p&gt;Works well, thanks!&lt;/p&gt;
&lt;p&gt;I suppose this functionality may be rolled into the &quot;normal&quot; Debug menu eventually?&lt;/p&gt;
&lt;p&gt;Feature requests:&lt;br /&gt;
A) Connection password manager integration&lt;br /&gt;
B) Allow arguments to the script&lt;br /&gt;
C) Ability to set &#039;default&#039; file to run&lt;/p&gt;
&lt;p&gt;Workarounds&lt;br /&gt;
A) (untested) Use passwordless ssh keys, not always as practical&lt;br /&gt;
B) hardcode it as part of the &#039;cmd&#039; variable in the macro&lt;br /&gt;
C) Swap to the correct file before running macro each time&lt;/p&gt;
&lt;p&gt;Thanks again.&lt;br /&gt;
~&lt;/p&gt;
</description>
 <pubDate>Thu, 24 May 2007 19:57:08 -0500</pubDate>
 <dc:creator>MizAtServercave</dc:creator>
 <guid isPermaLink="false">comment 1798 at http://community.activestate.com</guid>
</item>
<item>
 <title>Macro to start remote debugging for current file</title>
 <link>http://community.activestate.com/forum-topic/macro-to-start-remote-deb</link>
 <description>&lt;p&gt;I use the following Komodo JavaScript macro for kicking off a remote debugging session for a remote python file I have opened in Komodo, opened usually over SFTP or SCP. It will kick off the remote dbgp debugger and connect to your running Komodo.&lt;/p&gt;
&lt;p&gt;Dependancies:&lt;br /&gt;
* Requires ssh on your local system&lt;br /&gt;
* Requires dbgp commands on your shell path (i.e. pydbgp).&lt;/p&gt;
&lt;p&gt;Note: You need to set the hostname initially, as I could not find a good way to grab the local hostname from javascript.&lt;/p&gt;
&lt;div class=&quot;geshi-block&quot;&gt;
&lt;div class=&quot;geshifilter javascript&quot; style=&quot;font-family: monospace;&quot;&gt;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;function&lt;/span&gt; runRemoteDebug&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// Bit of a hack to get the info we need&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; RFService = Components.&lt;span style=&quot;color: #006600;&quot;&gt;classes&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;@activestate.com/koRemoteConnectionService;1&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;getService&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;Components.&lt;span style=&quot;color: #006600;&quot;&gt;interfaces&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;koIRemoteConnectionService&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;try&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; connection = RFService.&lt;span style=&quot;color: #006600;&quot;&gt;getConnectionUsingUri&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;komodo.&lt;span style=&quot;color: #006600;&quot;&gt;document&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;file&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;URI&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;catch&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;ex&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #000066;&quot;&gt;alert&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;Currently opened file is not a supported remote file&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #000066; font-weight: bold;&quot;&gt;return&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; hostname = connection.&lt;span style=&quot;color: #006600;&quot;&gt;server&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; username = connection.&lt;span style=&quot;color: #006600;&quot;&gt;username&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; sshPart = &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;ssh &amp;quot;&lt;/span&gt; + username + &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;@&amp;quot;&lt;/span&gt; + hostname;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; filepath = komodo.&lt;span style=&quot;color: #006600;&quot;&gt;document&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;file&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;path&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; dbgpManagerSvc = Components.&lt;span style=&quot;color: #006600;&quot;&gt;classes&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;@activestate.com/koDBGPManager;1&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;getService&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;Components.&lt;span style=&quot;color: #006600;&quot;&gt;interfaces&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;koIDBGPManager&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// XXX - Customize your hostname below!&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// Requires pydbgp setup in your remote path&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; cmd = &lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;pydbgp -d set_local_hostname:&amp;quot;&lt;/span&gt; + dbgpManagerSvc.&lt;span style=&quot;color: #006600;&quot;&gt;port&lt;/span&gt; + &lt;span style=&quot;color: #3366CC;&quot;&gt;&#039; &#039;&lt;/span&gt; + filepath;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// I needed to explicitly run my profile in order to setup the&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// appropriate dbgp settings, example below:&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;//var cmd = &amp;quot;. ./.profile &amp;amp;&amp;amp; pydbgp -d set_local_hostname:&amp;quot; + dbgpManagerSvc.port + &#039; &#039; + filepath;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// We have enough info, run the command&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; userEnvSvc = Components.&lt;span style=&quot;color: #006600;&quot;&gt;classes&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;@activestate.com/koUserEnviron;1&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #006600;&quot;&gt;getService&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;Components.&lt;span style=&quot;color: #006600;&quot;&gt;interfaces&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;koIUserEnviron&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;var&lt;/span&gt; env = userEnvSvc.&lt;span style=&quot;color: #006600;&quot;&gt;GetEncodedEnvironment&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; ko.&lt;span style=&quot;color: #006600;&quot;&gt;run&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;runCommand&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;window,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;sshPart + &lt;span style=&quot;color: #3366CC;&quot;&gt;&#039; &amp;quot;&#039;&lt;/span&gt; + cmd + &lt;span style=&quot;color: #3366CC;&quot;&gt;&#039;&amp;quot;&#039;&lt;/span&gt;,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #3366CC;&quot;&gt;&amp;quot;&amp;quot;&lt;/span&gt;,&amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// cwd (%D == directory path of file)&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;env,&amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// env&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;false&lt;/span&gt;, &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// insertOutput&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;false&lt;/span&gt;, &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// operateOnSelection&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;false&lt;/span&gt;, &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// doNotOpenOutputWindow&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #3366CC;&quot;&gt;&#039;command-output-window&#039;&lt;/span&gt;, &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// runIn&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #CC0000;&quot;&gt;0&lt;/span&gt;,&amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// parseOutput&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #3366CC;&quot;&gt;&#039;&#039;&lt;/span&gt;, &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// parseRegex&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #CC0000;&quot;&gt;0&lt;/span&gt;,&amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// showParsedOutputList&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;false&lt;/span&gt;,&amp;nbsp; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// Clear output window before starting&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #003366; font-weight: bold;&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;; &lt;span style=&quot;color: #009900; font-style: italic;&quot;&gt;// termination callback js function&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;komodo.&lt;span style=&quot;color: #006600;&quot;&gt;view&lt;/span&gt;.&lt;span style=&quot;color: #006600;&quot;&gt;scintilla&lt;/span&gt;.&lt;span style=&quot;color: #000066;&quot;&gt;focus&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
runRemoteDebug&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/div&gt;
&lt;pre class=&quot;geshi-plain&quot;&gt;function runRemoteDebug() {
    // Bit of a hack to get the info we need
    var RFService = Components.classes[&amp;quot;@activestate.com/koRemoteConnectionService;1&amp;quot;].getService(Components.interfaces.koIRemoteConnectionService)
    try {
        var connection = RFService.getConnectionUsingUri(komodo.document.file.URI);
    } catch (ex) {
        alert(&amp;quot;Currently opened file is not a supported remote file&amp;quot;);
        return;
    }

    var hostname = connection.server;
    var username = connection.username;
    var sshPart = &amp;quot;ssh &amp;quot; + username + &amp;quot;@&amp;quot; + hostname;

    var filepath = komodo.document.file.path;
    var dbgpManagerSvc = Components.classes[&amp;quot;@activestate.com/koDBGPManager;1&amp;quot;].getService(Components.interfaces.koIDBGPManager);
    // XXX - Customize your hostname below!
    // Requires pydbgp setup in your remote path
    var cmd = &amp;quot;pydbgp -d set_local_hostname:&amp;quot; + dbgpManagerSvc.port + &#039; &#039; + filepath;
    // I needed to explicitly run my profile in order to setup the
    // appropriate dbgp settings, example below:
    //var cmd = &amp;quot;. ./.profile &amp;amp;&amp;amp; pydbgp -d set_local_hostname:&amp;quot; + dbgpManagerSvc.port + &#039; &#039; + filepath;

    // We have enough info, run the command
    var userEnvSvc = Components.classes[&amp;quot;@activestate.com/koUserEnviron;1&amp;quot;].
          getService(Components.interfaces.koIUserEnviron);
    var env = userEnvSvc.GetEncodedEnvironment();
    ko.run.runCommand(window,
                   sshPart + &#039; &amp;quot;&#039; + cmd + &#039;&amp;quot;&#039;,
                   &amp;quot;&amp;quot;,  // cwd (%D == directory path of file)
                   env,   // env
                   false, // insertOutput
                   false, // operateOnSelection
                   false, // doNotOpenOutputWindow
                   &#039;command-output-window&#039;, // runIn
                   0,  // parseOutput
                   &#039;&#039;, // parseRegex
                   0,  // showParsedOutputList
                   false,  // Clear output window before starting
                   null); // termination callback js function
}

komodo.view.scintilla.focus();
runRemoteDebug();&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Cheers,&lt;br /&gt;
Todd&lt;/p&gt;
</description>
 <comments>http://community.activestate.com/forum-topic/macro-to-start-remote-deb#comments</comments>
 <category domain="http://community.activestate.com/forums/komodo-extensions-0">Komodo Macros and Extensions</category>
 <category domain="http://community.activestate.com/os/all-any">All / Any</category>
 <pubDate>Thu, 24 May 2007 18:21:37 -0500</pubDate>
 <dc:creator>ToddW</dc:creator>
 <guid isPermaLink="false">944 at http://community.activestate.com</guid>
</item>
</channel>
</rss>
