<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Resources - How to Get Help</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="Apache Rivet 3.0"><link rel="up" href="index.html" title="Apache Rivet 3.0"><link rel="prev" href="fb.html" title="FormBroker"><link rel="next" href="internals.html" title="Rivet Internals"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Resources - How to Get Help</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="fb.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="internals.html"><img src="images/next.png" alt="Next"></a></td></tr></table></div><div class="section"><div class="titlepage"><div><div><hr><h2 class="title" style="clear: both"><a name="help"></a>Resources - How to Get Help</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idm45384556473488"></a>Mailing Lists</h3></div></div></div><p style="width:90%">
	The Rivet mailing list is the first place you should turn for
	help. If you haven't found the solution to your problem in the documentation  
	or you have a question, idea, or comment about the Rivet code itself send email to
	<code class="email">&lt;<a class="email" href="mailto:rivet-dev@tcl.apache.org">rivet-dev@tcl.apache.org</a>&gt;</code>. To subscribe to the list, post email to
	<code class="email">&lt;<a class="email" href="mailto:rivet-dev-subscribe@tcl.apache.org">rivet-dev-subscribe@tcl.apache.org</a>&gt;</code>.
      </p><p style="width:90%">
	The mailing list archives are available at <a class="ulink" href="http://mail-archives.apache.org/mod_mbox/tcl-rivet-dev/" target="_top">http://mail-archives.apache.org/mod_mbox/tcl-rivet-dev/</a>
      </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idm45384556470128"></a>Newsgroup</h3></div></div></div><p style="width:90%">
	The <a class="ulink" href="news:comp.lang.tcl" target="_top">news:comp.lang.tcl</a> newsgroup is a good
	place to ask about Tcl questions in general.  Rivet developers
	also follow the newsgroup, but it's best to ask Rivet-specific
	questions on the Rivet list.
      </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="websites"></a>Web Sites</h3></div></div></div><p style="width:90%">
	There are several web sites that cover Apache and Tcl
	extensively.
      </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">
	    <a class="ulink" href="http://tcl.apache.org" target="_top">http://tcl.apache.org</a> is the home for the
	    Apache Tcl project.  Go there for the latest versions of
	    our software (if you aren't reading these pages off of the
	    site!).
	  </div></li><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">
	    <a class="ulink" href="http://httpd.apache.org/docs/" target="_top">http://httpd.apache.org/docs/</a> is the first
	    place to go for questions about the Apache web server.
	  </div></li><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">
	    <a class="ulink" href="http://www.tcl.tk" target="_top">http://www.tcl.tk</a> is the canonical site
	    for Tcl information.
	  </div></li><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">
	    <a class="ulink" href="http://wiki.tcl.tk" target="_top">http://wiki.tcl.tk</a> is the Tcl'ers Wiki, a
	    free-form place to search for answers and ask for help.
	  </div></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idm45384556417200"></a>Bug Tracking System</h3></div></div></div><p style="width:90%">
	Apache Rivet uses the Apache Bug Tracking system at <a class="ulink" href="http://issues.apache.org/bugzilla/" target="_top">http://issues.apache.org/bugzilla/</a>.  Here,
	you can report problems, or check and see if existing issues
	are already known and being dealt with.
      </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idm45384556415280"></a>IRC</h3></div></div></div><p style="width:90%">
        Occasionally, someone from the Rivet team is on IRC at
        irc.freenode.net, channel #tcl.
      </p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="idm45384556414000"></a>Editing Rivet Template Files</h3></div></div></div><p style="width:90%">
	Rivet makes available code for two popular editors,
	<span class="application">emacs</span> and
	<span class="application">vim</span> to facilitate the editing of
	Rivet template files.  The key concept is that the editor is
	aware of the &lt;? and ?&gt; tags and switches back and forth
	between Tcl and HTML modes as the cursor moves.  These files,
	<code class="filename">two-mode-mode.el</code> and
	<code class="filename">rvt.vim</code> are available in the
	<code class="filename">contrib/</code> directory.
      </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="fb.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="internals.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">FormBroker </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> Rivet Internals</td></tr></table></div></body></html>
