<!--
 File        :  $Source: /cvsroot/multignometerm/multignometerm/gnome-terminal/C/multi-gnome-terminal.sgml,v $

 Purpose     :  User Guide
                
 $Id: multi-gnome-terminal.sgml,v 1.75 2003/04/12 03:25:41 hal9 Exp $

 Multi Gnome Terminal User Guide: Copyright (C) 2002 by:
 Cristiano De Michele and Hal Burgiss. See LICENSE.

-->

<!-- ****************************************************** -->
<!-- READ: the mgt-devel and draft entity flags may need    -->
<!-- to be toggled for stable releases vs whats in CVS      -->
<!-- ****************************************************** -->

<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
<!ENTITY GNOME-APPS SYSTEM "multi-gnome-terminal.sgml">
<!ENTITY term "<application>Multi Gnome Terminal</application>">
<!ENTITY oldterm "<application>Gnome Terminal</application>">
<!ENTITY intro SYSTEM "shared/intro.sgml">
<!ENTITY newfeatures SYSTEM "shared/newfeatures.sgml">
<!ENTITY mgt-version SYSTEM "version.doc"> <!-- created by ./Makefile -->
<!ENTITY % draft  "IGNORE">
<!ENTITY % mgt-devel  "IGNORE"> <!-- exclude this stuff for stable releases -->
<!ENTITY figures  "figures">    <!-- for testing, install path is different -->
 ]>                             <!--  Hal: BE SURE TO RESET ***********     -->
                                <!-- ../figures is for testing in CVS only  -->
                                <!-- ...................................... -->
<!--

Changes:

xref:
See the <link linkend=""><citetitle></citetitle> Section.</link>

(<emphasis>NEW v1.6.0</emphasis>)

-->

<article id="index">
  <artheader> 
   <title>Multi Gnome Terminal User's Guide</title>
  <!-- 
   <subtitle><inlinegraphic fileref="multignometerm.png"></inlinegraphic></subtitle>
  --> 
   <subtitle>Multi Gnome <inlinegraphic fileref="multignometerm.png"></inlinegraphic> Terminal  &mgt-version;</subtitle>
    
    <copyright>
      <year>2000</year>
      <holder>Miguel de Icaza</holder>
      <holder>Michael Zucchi</holder>
      <holder>Alexander Kirillov</holder>
    </copyright>
    <copyright>
      <year>2002</year>
      <holder>Hal Burgiss</holder>
      <holder>Cristiano De Michele</holder>
    </copyright>
 
    <legalnotice id="legalnotice"> 
      <para>
       Permission is granted to copy, distribute and/or modify this document
       under the terms of the <ulink type="help"
       url="gnome-help:fdl"><citetitle>GNU Free Documentation
       License</citetitle></ulink>, Version 1.1 or any later version published
       by the Free Software Foundation with no Invariant Sections, no
       Front-Cover Texts, and no Back-Cover Texts.  A copy of the license can
       be found <ulink type="help" url="gnome-help:fdl">here</ulink>.
      </para>

      <para>
       Many of the names used by companies to distinguish their products and
       services are claimed as trademarks. Where those names appear in any
       GNOME documentation, and those trademarks are made aware to the members
       of the GNOME Documentation Project, the names have been printed in caps
       or initial caps.
      </para>
    </legalnotice>

   </artheader>

<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->

    <sect1 id="description"><title>Description</title>
    <!-- include shared/intro.sgml -->
    <!-- 
     &intro;
   --> 
    <!-- end include -->

<para>
 <informalfigure pgwide="1" float="1">
   <mediaobject>
     <imageobject>
       <imagedata  fileref="&figures;/mgt_pix_intro150.jpg" format="jpg">
     </imageobject> 
     <textobject>
      <phrase>Screenshot with Intro to MGT</phrase>
     </textobject>
   </mediaobject>
 </informalfigure>
</para>
     
     <!--   ~~~~~       New section      ~~~~~     -->
      <sect2 id="newfeatures">
      <title>Features</title>
       <!-- include shared/newfeatures.sgml -->
        &newfeatures;
       <!-- end include -->

      <![%mgt-devel;[
       <caution>
        <Para>
         <emphasis>
          This document is included with a development version of &term;. It
          may be out of sync with the current code base as a result. The 
          code base itself may be <quote>stable</quote>, or may not 
          be, depending on what Cristiano is up to ;-)
         </emphasis>
        </Para>
       </caution>
     ]]>
      </sect2>
     
   <sect2 id="upgraders"><title>Notes to Upgraders</title>
    <para>
     This section will address possible configuration and usage issues that might
     arise from upgrading from an older &term; version. There are always new
     features. See the <ulink url="NEWS"><filename>NEWS</filename></ulink>
     file file for a list of what's new with each release, and major bug
     fixes. And you can read the <ulink
     url="ChangeLog"><filename>ChangeLog</filename></ulink>, if you want all
     the agonizing, gory details. 
    </para>

  <simplesect id="upgrade-1-6-1"><title>&term; v1.6.1 and v1.6.2</title>
   <para>
    <itemizedlist>
     <listitem>
      <para>
       v1.6.1 and v1.6.2 are bugfix releases. See v1.6.0 below for
       configuration changes from earlier versions.
      </para>
     </listitem> 
   
    </itemizedlist>
   </para> 
  </simplesect>

  <simplesect id="upgrade-1-6-0"><title>&term; v1.6.0</title>
   <para>
    <itemizedlist>
    <listitem>
     <para>
      <emphasis  role="strong">Window and Tab Classes</emphasis>: 
      Previously, all <quote>Classes</quote> (i.e. configuration profiles), were
      scoped such that all <guibutton>Tabs</guibutton> for a particular Window
      shared the same Class configuration preferences. Configuration 
      preferences are now divided such that there are two
      <emphasis>Class</emphasis> categories, allowing for more flexible
      configuration schemes. The result is: <emphasis>Tab Classes</emphasis> and
      <emphasis>Window classes</emphasis>. This means that each
      <guibutton>Tab</guibutton> can have its own distinct colors, fonts,
      backgrounds, etc., and that any one Window can conceivably have any
      number of distinctly different <guibutton>Tab</guibutton> configurations. 
      Some of the immediate ramifications:
     </para>
     
     <para>
      <itemizedlist>

      <listitem>
       <para>
        Any previously defined Classes, will become <quote>tclasses</quote>
        (Tab Classes) after upgrading from v1.5.x. This is significantly new
        behavior. As a result, any start-up <guibutton>Tabs</guibutton> will
        have lost their Class associations, and will have to be re-defined.
        <link linkend="edit-commands"><citetitle>Edit
        Commands</citetitle></link> also now has options for setting both
        <emphasis>Window Classes</emphasis> and <emphasis>Tab
        Classes</emphasis> for start-up Tabs. You can specify both, if need
        be. 
      </para>
     </listitem> 
     
     <listitem>
      <para>
       The corresponding command line options are now
       <option>--tclass</option> to specify a <guibutton>Tab</guibutton> only
       Class (new behavior!) And <option>--wclass</option> to specify a Window
       only Class. <option>--tclass</option> behavior is notably different
       now.      
      </para>
     </listitem> 
   
     <listitem>
      <para>
       In previous versions, the <guimenuitem>Preferences</guimenuitem> Window
       contained all important &term; configuration. This has been split into
       two Windows now, and two corresponding menu selections --
       <guimenuitem>Tab Preferences</guimenuitem> and <guimenuitem>Win
       Preferences</guimenuitem>. Each selection contains only those
       preferences that apply to the Class scoping in question, i.e.
       <guimenuitem>Tab Preferences</guimenuitem> contains all attributes,
       and only those attributes, that can be specified per
       <guibutton>Tab</guibutton>. 
      </para>
     </listitem>
      
     </itemizedlist>
    </para> 
     
    <para>
     See the <link linkend="classes"><citetitle>Terminal Configuration
     Classes</citetitle> Section</link> for details on &term; Classes.
    </para>
   
   </listitem> 

    </itemizedlist>
   </para> 
  </simplesect>
  
  <simplesect id="upgrade-1-5-2"><title>&term; v1.5.2</title>
  <para>
   <itemizedlist>
    <listitem>
     <para>
      <emphasis  role="strong">Default <emphasis>New Term</emphasis> Menu
      Selections</emphasis>: These are the items at the top of the 
      <guimenu>New Term</guimenu> menu, such as <guimenuitem>Shell</guimenuitem> 
      and <guimenuitem>mc</guimenuitem>. These can be disabled now. 
      See the <link linkend="edit-commands"><citetitle>Edit
      Commands</citetitle> Section</link> for details. 
     </para>
    </listitem> 
    <listitem>
     <para>
      <emphasis  role="strong">mgt-helper</emphasis>: There is 
      now an <quote>-x</quote> option that allows running compound 
      shell commands from <guimenu>Edit Commands</guimenu>. Example:
     </para>
     <screen>
  mgt-helper -x ls -l |less && echo Say good bye, computer. ; echo Good bye ; sleep 3</screen>
    <para>
     Many small configuration and usage improvements as well. There is also 
     a man page, and docmentation now for <link
     linkend="mgt-helper"><command>mgt-helper</command></link>.
    </para>
    </listitem> 
    <listitem>
     <para>
      <emphasis  role="strong">Edit Commands:</emphasis> The Window is now
      tabbed and re-ogranized, giving more room for those of us with a
      qazillion commands to deal with. Tip: You can re-order the <guimenu>New
      Term</guimenu> menu by dragging entries with the mouse and re-locating
      them within the list.
     </para>
    </listitem> 
    <listitem>
     <para>
      <emphasis  role="strong">New in this documentation</emphasis>: The
      <link linkend="keybindings">Keybindings</link> section has been
      re-written to correct some significant omissions, better highlight 
      key features, and to correct one glaring error. Please read, or
      re-read, as the case may be.
     </para>
    </listitem> 
    <listitem>
     <para>
      <emphasis  role="strong">Y3K Compliancy</emphasis>: 
      A third generation Toklass class-B Time Runner bot recently took &term;
      to the year 3,000, and not surprisingly, &term; passed all tests with
      <emphasis>flying</emphasis> colors. And was subsequently certified by
      the United Bot Federation (UBF) for use at all Federation operational 
      levels.
     </para>
    </listitem> 

    </itemizedlist>
   </para> 
  </simplesect>

  <simplesect id="upgrade-1-5-1"><title>&term; v1.5.1</title>
  <para>
   <itemizedlist>
    <listitem>
     <para>
       <emphasis  role="strong">mgt-helper</emphasis>:
       <filename>mgt-helper</filename>  is a shell script that is now bundled
       with &term; to help improve interaction of &term; with the shell 
       environment. It essentially is a collection of subroutines that add
       supplemental functionality that would be difficult to accomplish from
       within &term; alone. For the time being, the best reference for this
       script, are the comments in the script itself. Some highlights:
     </para> 
      <para>
       <itemizedlist>
        <listitem>
         <para>
          Did you ever wish you had a separate <application>bash</application>
          history file (up arrow key from prompt), for specific
          <guibutton>Tabs</guibutton>? Now you can. Find your custom terminals
          in <guimenu>Edit Commands</guimenu>, and change the command
          definition to: <literal>mgt-helper -h &lt;some_id&gt;</literal>,
          where <quote>some_id</quote> is some unique string of your chosing.
          Save and apply changes. This will start a
          <application>bash</application> shell now with a custom
          <application>bash</application> history
          file. 
         </para>
       </listitem> 

       <listitem>
        <para>
         You can now use &term; with GNOME URL handlers. This means you can 
         configure GNOME to launch a text based app in its own
         <guibutton>Tab</guibutton> (or split <guibutton>Tab</guibutton>) for
         http, ftp, mailto, and file type URLs. So, for instance, if you
         <keycap>CTRL-MiddleMouse</keycap> click on a highlighted HTTP URL in
         the terminal window, you can launch a text browser that will launch
         in its own <guibutton>Tab</guibutton>. You will need to set this up
         in GNOME under <guimenuitem>Document Handlers</guimenuitem>. Or, edit
         your <filename>~/.gnome/Gnome</filename> file. See
         <command>mgt-helper --usage</command> for syntax, and the file itself
         for further configuration. Other applications will still use GUI
         defaults (set your preferred GUI defaults in
         <filename>~/.mgt-helper.rc</filename>). Note: This only works on
         Linux!
        </para>
       </listitem> 
  
      </itemizedlist>
     </para> 
     <para>
       <emphasis>Note</emphasis>: this script is a work in progress, and is
       not well tested. The various options are independent of each other, and
       should be invoked individually.
     </para>
    </listitem> 

    <listitem>
     <para>
       <emphasis  role="strong">Keybindings</emphasis>: There are several new
       Actions available for <link linkend="keybindings">Keybindings</link>:
       <quote>New Terminal Menu</quote>, <quote>Right Click Menu</quote> (i.e.
       the pop-up control menu), <quote>Selection mode off</quote> (shortcut
       is pop-up modifier key + <keycap>MiddleMouse</keycap>), and
       <quote>Terminal Help</quote> (<citetitle>User Guide</citetitle>).
     </para>
    </listitem> 

    <listitem>
     <para>
       <emphasis  role="strong">GNOME Sessions</emphasis>: You can now 
       save your &term; layout (Windows, Tabs, paths, etc), when exiting 
       GNOME, if GNOME is configured to <quote>save</quote> the current 
       configuration.
     </para>
    </listitem> 
    </itemizedlist>
   </para> 
  </simplesect>

  <simplesect><title>&term; v1.5.0</title>
  <para>
   <itemizedlist>
    <listitem>
     <para>
       <emphasis  role="strong">Keybindings</emphasis>: There are a number of
       new Actions available for use with <link
       linkend="keybindings">Keybindings</link> to reflect the new features, 
       such as splitting. These are available from the dropdown list at the
       top of the Window. But these will not be reflected in the currently
       defined list of Keybindings for anyone upgrading from 1.4.x, and
       consequently unavailable for immediate use. In fact, any old
       keybindings that have been superceded may not work as expected. The
       solution is to delete the outdated keybindings, and replace them with
       one of the new ones.
     </para>
    </listitem> 

    <listitem>
     <para>
       <emphasis  role="strong">Command Line Options</emphasis>: There are
       many new command line options for creating new
       <guibutton>Tabs</guibutton>, Windows, splits, etc. See the <link
       linkend="options"><citetitle>Command Line Options</citetitle>
       Section</link> for more on this (new ones are near the end of the
       list).
     </para>
    </listitem> 
    
    <listitem>
     <para>
      <emphasis  role="strong">New Term Menu</emphasis> (formerly the New Tab
      menu): Each selection from the <guimenu>New Term</guimenu> menu, will 
      open a sub-menu so as to easily incorporate the splitting feaures. But, 
      this requires a little more mouse movement to open new
      <guibutton>Tabs</guibutton>.
     </para>
     <para>
      If this is inconvenient, consider that anything you do repetitively can 
      be accomplished by other means. And often with less effort. For
      instance, with <link linkend="keybindings">Keybindings</link>, any 
      action, such as opening a new <guibutton>Tab</guibutton>, is potentially 
      one key stroke away. Also, <application>bash</application> aliases 
      and the new <link linkend="options">command line options</link>, could 
      conceivably do the same with a one letter alias. See the 
      <link linkend="appendix"><citetitle>Command Examples</citetitle>
      Section</link> in Appendix A. Also, you can easily define various 
      custom <link linkend="classes">Classes</link> to reflect various working 
      habits so that starting &term;, puts you into exactly the configuration 
      you want for that particular occasion. Any of these methods are arguably 
      <quote>easier</quote> than the two mouse clicks required for the old 
      menu system (one click to open menu, one to select option).
     </para>
     <para>
      The menus are primarily for inexperienced users that have not yet had
      time to learn the more <quote>advanced</quote> features. Or, for
      features that one does not use often.
     </para>
    </listitem> 

    <listitem>
     <para>
      <emphasis  role="strong">Launch URLs</emphasis>: The shortcut for 
      direct launching of URLs (i.e. to bypass the <guimenu>Pop-up</guimenu> 
      menu), is now <keycap>CTRL-MiddleMouse</keycap>.
     </para>
    </listitem> 

    </itemizedlist>
    </para> 
    </simplesect>

    </sect2>


     </sect1>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->

    <sect1 id="usage"><title>Usage Overview</title>
    
<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="shells">
	<title>Shells</title>
	<para> 
      &term; starts a <quote>shell</quote> environment (command line
      interpreter). UNIX shells can significantly extend the capabilities of
      the usual command line prompt. For example, the
      <application>bash</application> shell (which is the default shell for
      most Linux distributions) provides command completion (try entering
      beginning of a command or file name and press <keycap>Tab</keycap>
      key), a history buffer (you can recall previously entered commands by
      pressing <keycap>Up</keycap> arrow key), and much more.  For complete
      documentation, see the manual pages for the appropriate shells. 
	</para>
     <para>
      &term; further extends the traditional command line interface by
      allowing potentially many shells to co-exist within the same Window
      simultaneously. 
     </para>
    </sect2>
<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="multiterminals">
    <title>Multiple Terminals</title>
     <para> 
      The most prominent innovation of &term; is the ability to run multiple
      terminals within the same X Window. Each terminal constitutes a fully
      functional shell environment and is represented in the GUI by a
      <link linkend="tabs"><guibutton>Tab</guibutton></link>.
     </para>
     <para>
      The terminal window can also be split horizontally and vertically, 
      can be moved from one &term; Window to another, and can be 
      <quote>bonded</quote> to other terminal windows.
     </para>
     <para>
      Navigation between opened terminals is easily done either via the 
      <guibutton>Tabs</guibutton>, or keyboard shortcuts, which are 
      configurable. 
     </para>
     <para>
      <guibutton>Tabs</guibutton> can be initialized in various ways, 
      and saved such that new &term; Windows are opened with a 
      user specified configuration, or with the previous state saved, or 
      a combination. See the <link linkend="tabs"><citetitle>Tabs
      Section</citetitle></link> for details.
     </para>
   
    </sect2>
    
<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="commands">
    <title>Commands</title>
    <para>
     &term; <quote>Commands</quote> are shell commands to 
     initialize new terminals. These can be something simple to 
     just start a new interactive shell. Or can do more interesting 
     things, such as change to a specified directory on start up, or 
     <command>ssh</command> to a remote host and start a shell there.
     Or whatever else the imagination may allow ;-)
    </para>
    <para>
     &term; commands are configured from the <guimenuitem>Edit
     Commands</guimenuitem> selection of the <guimenu>Settings</guimenu> 
     menu, and are then easily invoked from the the <guimenu>New Term</guimenu>
     menu. Or via keyboard shortcuts (see <link
     linkend="keybindings"><citetitle>Keybindings</citetitle>
     Section</link>). See the <link linkend="edit-commands"><citetitle>Edit
     Commands</citetitle> Section</link>.
    </para>
   </sect2>
<!--  ~  End section  ~  -->

<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="keys">
    <title>Key Bindings</title>
    <para>
     Keyboard shortcuts are easily configured for various &term; functions,
     any user defined Commands, and various other user preferences and usages.
     These are configured from the <guimenuitem>Keybindings</guimenuitem>
     selection of the <guimenu>Settings</guimenu> menu. See the <link
     linkend="keybindings"><citetitle>Keybindings</citetitle> Section.</link>
    </para>
   </sect2>
<!--  ~  End section  ~  -->



<!--   ~~~~~       New section      ~~~~~     -->

  <sect2 id="gui-controls"> 
   <title>GUI Controls</title>
    <para> 
     &term; provides various GUI components for navigation, configuration, 
     and control over &term;'s behavior. In addition to the
     <guimenu>Menus</guimenu> and <guibutton>Scrollbar</guibutton> from
     &oldterm;, &term; adds a <guibutton>Toolbar</guibutton> and 
     a <guibutton>Buttonbar</guibutton>. And of course, the
     <guibutton>Tabs</guibutton>. See <link linkend="ui"><citetitle>
     the User Interface</citetitle> section</link> for an explanation of each.
    </para>
    </sect2>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
 <sect2>
 <title>Classes</title>
 <para> 
  &term; <quote>Classes</quote> are saved configuration profiles for such
  things as fonts, colors, backgrounds, Tabs, etc. There are two Class
  categories: Tab Classes and Window Classes. There can conceivably be 
  many <quote>Class</quote> profiles created for user preferences, which can
  be invoked as needed. These can be either invoked at program start-up, or
  changed dynamically from the Menu. 
 </para>

 </sect2>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="liveurls">
     <title>Launch URLs</title>
     <para>
      &term; improves &oldterm;'s recognition of URL-like strings on the screen.
      If clicked with <keycap>CTRL-MiddleMouse</keycap>, &term; will try to open
      the appropriate application: a web browser, mail client, or file
      manager (or if no on-screen match, this will reset X selection mode).
      See the <link linkend="url-highlight"><citetitle>Launching
      URLs</citetitle> Section</link> for more on this feature, which is
      greatly enhanced, and can conceivably be customized to a high degree.
     </para>
    </sect2>

<!--  ~  End section  ~  -->

<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="cline">
     <title>Command Line Options</title>
     <para>
      &term; includes a number of useful command line options for 
      creating new Windows, new <guibutton>Tabs</guibutton>, and split
      Windows. <guibutton>Tabs</guibutton> can even be added to the current
      Window dynamically. 
      See the <link linkend="options"><citetitle>Command Line Options</citetitle> Section.</link>
      </para>
    </sect2>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="emulation">
     <title>Emulation</title>
     <para>
      &term; is designed to emulate the <application>xterm</application>
      program provided by the X Consortium and provides improved emulation
      support over &oldterm;.  <application>xterm</application>, in turn, is
      an almost-complete emulation of the DEC VT102 terminal. 
     </para>
     <para>
      &term; supports the same extensions to the VT102 that the
      <application>xterm</application> program provides, through special
      <quote>escape</quote> sequences. Recent changes to
      <application>xterm</application> have been been incorporated into
      &term;. This includes emulation of the newer DEC VT220 escape sequences
      and also, full support for VT52. &term; is fully compliant with
      <command>vttest</command>, a program for testing terminal emulator
      support.
     </para>
	<para> 
      In simpler terms, this means that &term; understands all the commands
      (escape sequences) used by VT52/VT102/VT220/xterm terminals for things
      like positioning of the cursor on screen. Therefore, you can run in
      &term; any application that is designed to work inside
      VT52/VT102/VT220/xterm terminals and all the controls (such as arrows,
      <keycap>PageUp/PageDown</keycap> keys, <keycap>Tab</keycap> key, etc)
      should work as expected.  
	</para>
    
    </sect2>
   </sect1>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
  <sect1 id="ui">
   <title>User Interface Overview</title>
    <para>
	&term; provides a number of GUI controls for manipulating 
     various aspects of &term;'s behavior. The GUI controls 
     may be hidden, and most are relocatable.
    </para>

<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="tabs">
     <title>Tabs</title>
      <para>
       Each terminal Window has a <quote><guibutton>Tab</guibutton></quote>
       associated with it. By default, these are located immediately above the
       terminal Window, though can be re-positioned (see 
       the <link linkend="tabs-tab"><citetitle>Tabs Tab</citetitle>
       Section.</link>). The active <guibutton>Tab</guibutton> is
       <quote>raised</quote>, or otherwise emphasized (depending on theme).
       The <guibutton>Tab</guibutton> identifies that particular terminal and
       shell (or terminal/shell combinations if the Window is split).
      </para>
      <para> 
       The <guibutton>Tab</guibutton> also allows easy navigation by just left
       clicking with the mouse. Clicking with the <keycap>RightMouse</keycap> button on any
       <guibutton>Tab</guibutton> will pop-up a small menu of all opened
       <guibutton>Tabs</guibutton> for that Window. Navigation is also possible with keyboard
       shortcuts. To move sequentially: the shortcut is
       <keycap>SHIFT</keycap> plus the right or left arrow key. Or directly:
       <keycap>CTRL</keycap> plus the ordinal number of the desired
       <guibutton>Tab</guibutton>, example: <literal>CTRL-2</literal>. Both
       methods are configurable with the <link
       linkend="keybindings"><guimenuitem>Key Bindings</guimenuitem></link>
       dialog. 
      </para>
      <para>
       Each <guibutton>Tab</guibutton> has a label that can be customized 
       by middle clicking the <guibutton>Tab</guibutton>, and entering 
       a name in the dialog-box. This can also be done from the
       <guibutton>Toolbar</guibutton> or the <guibutton>Buttonbar</guibutton>.
       (The <guibutton>Titled Tabs</guibutton> feature should be disabled 
       for manually renaming labels to work consistently. 
       See the <link linkend="preferences"><citetitle>Preferences Configuration</citetitle> Section.</link>)
      </para>
      <para>
       Inactive terminals (whether split screen or not) notify that their
       buffer is in the process of changing, or has changed, via colors of the
       <guibutton>Tab</guibutton> labels. By default, <literal>red</literal>
       means the buffer content <emphasis>is</emphasis> in the process of
       changing; and <literal>blue</literal> means a change has taken place,
       and the buffer is paused. <guibutton>Tab</guibutton> label colors are
       definable from <link linkend="preferences-color-win"><guibutton>the
       Colors Tab</guibutton></link> of <link
       linkend="win-preferences"><guimenu>Win Preferences
       Configuration</guimenu></link>. The exception is if the terminal is in
       <quote>View</quote> mode, or is <quote>bonded</quote> with other
       terminals, but is not visible, then the label will not change color
       (see  the <link linkend="menu-file"><citetitle>File Menu</citetitle>
       Section.</link> for more on bonded and view terminals). 
       
      </para>
      <para>
       New terminals can be initiated with selections from the
       <link linkend="menu-newterm"><guimenu>New Term</guimenu></link> menu.
       This menu is also available from the <guibutton>Buttonbar</guibutton>,
       <guimenu>Menubar</guimenu>, or the application control pop-up
       menu that is activated by <keycap>CTRL-LeftMouse</keycap> (see 
       the <link linkend="menu-popup"><citetitle>Pop-up Menu</citetitle> Section.</link>).
      </para>
      <para>
       The <guimenu>New Term</guimenu> menu has six
       selections that are enabled by default: <guimenuitem>Shell</guimenuitem>, a regular
       bash shell is started; <guimenuitem>Root</guimenuitem>, a root
       shell is started with <command>su</command>; 
       <guimenuitem>mc</guimenuitem>, or <application>Midnight
       Commander</application>, a console file manager application;
       <guimenuitem>Split</guimenuitem>, the current terminal is split 
       using another open terminal; <guimenuitem>View</guimenuitem>, a 
       new terminal is created in <quote>view</quote> mode; 
       <guimenuitem>New tab with...</guimenuitem>, a new
       <guibutton>Tab</guibutton> is created using a split terminal 
       from the current Window, or another <guibutton>Tab</guibutton> or 
       split terminal from another &term; Window. You may add your own
       customizations to this menu through the <link
       linkend="edit-commands"><guisubmenu>Edit Command</guisubmenu></link>
       menu selection of the <link
       linkend="menu-settings"><guimenu>Settings</guimenu></link> menu.
      </para>
      
      <para>
       Selecting any item from the <guimenu>New Term</guimenu> menu will open
       a small sub-menu with various options on how and where to open the new
       terminal. It may be opened as a new <guibutton>Tab</guibutton> in the
       existing Window, or opened within the existing Window, but with the
       Window split either horizontally or vertically, or can be opened in a
       new &term; Window. See the <link linkend="menu-newterm">
       <citetitle>New Term</citetitle> Section</link> for details. 
      </para>
      <para>
       Saving a preferred <guibutton>Tab</guibutton> configuration can be 
       done several ways. Perhaps the easiest way is when logging out of 
       a gnome-session, and then if the current configuration is set to be saved
       automatically, or if the checkbox to save is checked, then all &term;
       <guibutton>Tabs</guibutton> for all opened &term; Windows will be
       restored on the next session start-up.
      </para>
      <para>
       Also, see the <link linkend="tabs-tab"><citetitle>Tabs Tab</citetitle>
       Section</link> for autosaving the <guibutton>Tab</guibutton>
       configuration. And then also, the <link
       linkend="edit-commands"><citetitle>Edit Commands</citetitle>
       Section</link> for defining custom start-up <guibutton>Tabs</guibutton>
       on a per <quote>Class</quote> basis.
      </para>
       
     </sect2>

<!--  ~  End section  ~  -->

<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="scrollbar">
     <title>Scrollbar</title>
	<para>
	  &term; provides a Scrollbar so that the user can scroll
       back and see previous commands and output in the terminal buffer
       history with the mouse. This is especially convenient  when a command
       output does not fit in the viewable screen area. By default, the scrollbar is placed
       on the right side of the terminal Window. You can change its location
       or remove the scrollbar altogether using the <link
       linkend="preferences"><guimenu>Preferences Configuration</guimenu> dialog</link>. You can
       also use the keyboard for scrolling: <keycap>SHIFT-PageUp</keycap>
       scrolls up, and <keycap>SHIFT-PageDown</keycap> scrolls down.
	</para>
    </sect2>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->

    <sect2 id="toolbar">
     <title>Toolbar</title>
      <para>
       The <guibutton>Toolbar</guibutton> is used to manipulate and
       initialize <guibutton>Tabs</guibutton>. Like most other GUI
       components, it may be hidden, or re-located. To move, just grab the
       <quote>handle</quote> on the left edge. To hide, see the
       <guimenu>File</guimenu> menu on the <guimenu>Menubar</guimenu>, or the
       <guimenu>Pop-up</guimenu> control menu. Also, see 
       the <link linkend="preferences"><citetitle>Preferences Configuration</citetitle> Section.</link>.
      </para>
      <para>
       The <guibutton>Toolbar</guibutton> provides the following functions:
      </para>

      <para>
       <itemizedlist>
        <listitem>
         <para>
          Use the <guibutton>arrow</guibutton> buttons, to re-position the 
          current <guibutton>Tab</guibutton> to the right or to the left.
         </para>
       </listitem> 
       <listitem>
        <para>
         Open new <guibutton>Tabs</guibutton> with the three built-in  
         <quote>Commands</quote> of <quote>New Shell</quote>,
         <quote>Root Shell</quote>, and <quote>mc</quote>. (See <link
         linkend="newshell">the section called <emphasis>Menubar - New
         Term</emphasis></link>.)
        </para>
      </listitem> 
      <listitem>
       <para>
         Close and remove the current <guibutton>Tab</guibutton>.
       </para>
      </listitem> 
      <listitem>
       <para>
        Change the current <guibutton>Tab's</guibutton> title.
       </para>
      </listitem> 
  
      </itemizedlist>
     </para> 
     
    <literallayout>
    <!-- space eater -->
    </literallayout>
    
    <bridgehead renderas="sect3">Screenshot Showing GUI Features</bridgehead>
    <para>
      From top to bottom: <guimenu>Menubar</guimenu>, <guibutton>Toolbar</guibutton>,
      <guibutton>Tabs</guibutton>, terminal window, <guibutton>Buttonbar</guibutton>.
      The <guibutton>Scrollbar</guibutton> is on the left in this shot.
    </para>
    
    <informaltable frame=none label="" pgwide="1">
     <tgroup cols=1 align="center" colsep=1 rowsep=1>
      <colspec colname=c1 align="center">
       <tbody>
        <row>
         <entry align="center">
          <inlinegraphic  fileref="&figures;/mgt_pix_show_all150.jpg"></inlinegraphic>
        </entry>
       </row>
      </tbody>
     </tgroup>
    </informaltable>

   </sect2>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->

    <sect2 id="buttonbar">
     <title>Buttonbar</title>
      <para>
       The <guibutton>Buttonbar</guibutton> is also used to manipulate and
       initialize <guibutton>Tabs</guibutton>. Like other GUI components, it
       may be hidden (but not moved). To hide, see the <guimenu>File</guimenu> menu
       on the <guimenu>Menubar</guimenu>, or the <guimenu>Pop-up</guimenu>
       control menu. Also, see 
       the <link linkend="tabs-tab"><citetitle>Tabs Tab</citetitle> Section.</link>.
      </para>
      <para>
       The <guibutton>Buttonbar</guibutton> provides the following functions:
      </para>

      <para>
       <itemizedlist>
       <listitem>
        <para>
         Open new <guibutton>Tabs</guibutton> with the special
         <quote>Commands</quote> as listed in the <guimenu>New Term</guimenu>
         menu. This menu includes the default built-in
         <quote>Commands</quote>, as well as any user-defined commands. See
         the <link linkend="menu-newterm"><citetitle>New Term</citetitle>
         Section.</link> for more explanation.
        </para>
      </listitem> 
        <listitem>
         <para>
          Use the <guibutton>Tab Left</guibutton> and <guibutton>Tab
          Right</guibutton> buttons, to re-position the current
          <guibutton>Tab</guibutton> to the right or to the left.
         </para>
       </listitem> 
      <listitem>
       <para>
         The <guibutton>Remove</guibutton> button removes (closes) the current
         <guibutton>Tab</guibutton>. 
       </para>
      </listitem> 
      <listitem>
       <para>
        Change the current <guibutton>Tab's</guibutton>
        <guilabel>Title</guilabel>.
       </para>
      </listitem> 
  
      </itemizedlist>
     </para> 
    </sect2>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="menus">
     <title>Menus</title>
      <para>
       There are three main menus available: the <guimenu>Menubar</guimenu>
       located at the top of the terminal Window, a <guimenu>Pop-up</guimenu>
       control menu available by pressing the <keycap>RightMouse</keycap>
       button while holding the <keycap>CTRL</keycap> key while on the
       terminal Window, and the <guimenu>New Term</guimenu> menu which can be
       accessed with the <keycap>LeftMouse</keycap> button while holding the
       <keycap>CTRL</keycap> key (this is a shortcut to the
       <guimenu>Menubar</guimenu> menu of the same name).
      </para>
      <para>
       The <guimenu>Menubar</guimenu> is detachable by grabbing the 
       <!-- is "handle" the correct terminology???? -->
       <quote>handle</quote> (on left edge) with the mouse, and dragging to
       the bottom of the Window, or can be left free-floating on the Desktop.
      </para>
   <!--   
    <bridgehead renderas="sect3">Screenshot Showing Menubar</bridgehead>
   --> 
<!--
    <informaltable frame=none label="" pgwide="1">
     <tgroup cols=1 align="left" colsep=1 rowsep=1>
      <colspec colname=c1 align="left">
       <tbody>
        <row>
         <entry align="left">
          <inlinegraphic  fileref="&figures;/mgt_pix_menubar150.jpg"></inlinegraphic>
        </entry>
       </row>
      </tbody>
     </tgroup>
    </informaltable>
-->

<!--   ~~~~~       New section      ~~~~~     -->
   <sect3 id="menu-file">
    <title>Menubar - <emphasis>File</emphasis> menu</title>

	<variablelist>
	  <varlistentry>
	    <term><anchor id="new-window"><guimenuitem>&nbsp;New Window</guimenuitem></term>
   	    <listitem>
	      <para>
            Create a new &term; Window, complete with start-up
            <guibutton>Tabs</guibutton> and any saved terminals.  This is an
            efficient way to create new &term; Windows, as this uses less
            system resources than starting a separate copy of &term;. (For
            advanced users: the new terminal Window created in this way is
            owned by the same process, with the same PID as the original
            terminal.  Each terminal starts its own sub-shell processes,
            however.)
	      </para>
	    </listitem>
	  </varlistentry>
	  
	  <varlistentry>
	    <term><guimenuitem>&nbsp;Remove Term</guimenuitem></term>
	    <listitem>
	      <para>
            Deletes the current active terminal and associated shell. A prompt
            is given first to verify the intent. If this terminal is the 
            only opened terminal in that Window, then the Window exits too.
           </para>
	    </listitem>
	  </varlistentry>

	  <varlistentry>
	    <term><guimenuitem>&nbsp;Change Title</guimenuitem></term>
	    <listitem>
	      <para>
	       Opens a dialog-box for changing the current 
            <guibutton>Tab</guibutton> <guilabel>label</guilabel>.
           </para>
	    </listitem>
	  </varlistentry>

	  <varlistentry>
	    <term><guimenuitem>&nbsp;Save Terminals</guimenuitem></term>
	    <listitem>
	      <para>
	       Save the current <guibutton>Tab</guibutton> arrangement. 
            This will be used on the next start up of &term;, if 
            the <guibutton>Reopen tabs</guibutton> option is enabled 
            in the <guibutton>Tabs</guibutton> section of the 
            <guimenuitem>Preferences</guimenuitem> dialog-box. 
           See the <link linkend="tabs-tab"><citetitle>Tabs Tab</citetitle> Section.</link>
           </para>
	    </listitem>
	  </varlistentry>
 
	  <varlistentry>
	    <term><guimenuitem>&nbsp;All bonded</guimenuitem></term>
	    <listitem>
	      <para>
            This will <quote>bond</quote> all terminals. This means 
            that whatever commands are run in one bonded terminal, 
            are replicated in all the others that are bonded.
            <emphasis role="strong">Note</emphasis>: this is not appropriate
            for all commands, such as editing a file, or compiling, for
            instance, since you will have multiple edit and compile sessions 
            running concurrently. Use with discretion! There may also 
            be security implications here ... for instance, typing a 
            password with appear on all bonded terminals. Use with 
            <emphasis>caution</emphasis>!
           </para>
	    </listitem>
	  </varlistentry>
	  <varlistentry>
	    <term><guimenuitem>&nbsp;All unbonded</guimenuitem></term>
	    <listitem>
	      <para>
            Remove bonding (see above).
           </para>
	    </listitem>
	  </varlistentry>

        <varlistentry>
        <!-- same text in here twice for all three selections -->
	    <term><guimenuitem>&nbsp;Show menubar</guimenuitem></term>
	    <listitem>
	      <para>
            Hides the main <guimenu>Menubar</guimenu> on the terminal if
            unchecked, creating a neater, smaller terminal.  The
            <guimenu>Menubar</guimenu> can be restored using the <link
            linkend="menu-popup"> <guimenu>pop-up</guimenu> menu</link>.
	      </para>
	    </listitem>
	  </varlistentry>
	  
        <varlistentry>
	    <term><guimenuitem>&nbsp;Show toolbar</guimenuitem></term>
	    <listitem>
	      <para>
            Hides the <guimenu>Toolbar</guimenu> if unchecked. The
            <guibutton>Toolbar</guibutton> can be retrieved using the <link
            linkend="menu-popup"> <guimenu>pop-up</guimenu> menu</link> or the
            main <guimenu>Menubar</guimenu>.
	      </para>
	    </listitem>
	  </varlistentry>
       
        <varlistentry>
	    <term><guimenuitem>&nbsp;Show buttonbar</guimenuitem></term>
	    <listitem>
	      <para>
            Hides the <guimenu>Buttonbar</guimenu> if unchecked. The
            <guibutton>Buttonbar</guibutton> can be retrieved using the <link
            linkend="menu-popup"> <guimenu>pop-up</guimenu> menu</link> or the
            main <guimenu>Menubar</guimenu>.
	      </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guimenuitem>&nbsp;Close Window</guimenuitem></term>
	    <listitem>
	      <para>
            Closes the Window ;-) If there are multiple Windows of the 
            same process (i.e. opened with <guimenuitem>New Window</guimenuitem>),
            only the current Window is closed.
	      </para>
	    </listitem>
	  </varlistentry>
	</variablelist>
    </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
   <sect3 id="menu-newterm">
    <title>Menubar - <emphasis>New Term</emphasis> menu</title>
     <para>
      Actually, this same menu is accessible also by 
      clicking with <keycap>CTRL-LeftMouse</keycap> on the terminal 
      Window, and from the <guibutton>Buttonbar</guibutton>. This 
      is a <quote>tear off</quote> menu, and can be positioned 
      on the desktop, independently of the main Window (except 
      the <keycap>CTRL-LeftMouse</keycap> <guimenu>Pop-up</guimenu>
      menu). 
     </para>
     <para>
      This menu is used to manually start the shells and custom <link
      linkend="edit-commands">Commands</link>  of &term;, thus initializing
      <quote>new Tabs</quote> and terminals. Most entries when selected will
      open a sub-menu with four entries to determine how and where the new
      terminal will be opened (see below).
     </para>
     <para>
       There are six built-in selections that are enabled by default:
     </para>
	<variablelist>
     
	  <varlistentry>
       <!-- the three shell selections below, are in popup menu too as same text -->
	    <term><anchor id="newshell"><guimenuitem>&nbsp;Shell</guimenuitem></term>
	    <listitem>
	      <para>
            Opens a new terminal with a normal, interactive bash shell.
           </para>
	    </listitem>
	  </varlistentry>

	  <varlistentry>
	    <term><guimenuitem>&nbsp;Root</guimenuitem></term>
	    <listitem>
	      <para>
            Opens a new terminal with
            a root shell via <command>su</command>.
            </para>
	    </listitem>
	  </varlistentry>
     
	  <varlistentry>
	    <term><guimenuitem>&nbsp;mc</guimenuitem></term>
	    <listitem>
	      <para>
            Opens a new terminal with <application>Midnight
            Commander</application> (a console file manager).
           </para>
	    </listitem>
	  </varlistentry>

	  <varlistentry>
	    <term><guimenuitem>&nbsp;Split</guimenuitem></term>
	    <listitem>
	     <para>
           Split the current terminal by moving a terminal 
           from another, already opened &term; Window, or from 
           another <guibutton>Tab</guibutton> in the same Window.
          </para>
          <para>
           This selection opens a short sub-menu with selection options 
           of <guimenuitem>Horizontally with...</guimenuitem> and 
           <guimenuitem>Vertically with...</guimenuitem> to determine 
           which type of split will be used in the current terminal. 
           Choose one. Then change to another <guibutton>Tab</guibutton>
           for this same Window, click the terminal Window itself, and 
           the terminal is moved. Or to move between Windows, click on the
           terminal in the other Window that you want to use to make the split
           in the current Window.
          </para>
          <para>
           Moving between Windows requires that both Windows be opened with
           either <guimenuitem>New Window</guimenuitem> menu selection or with
           the &oldterm; factory server <link linkend="options">command line
           option</link>.
          </para>
	    </listitem>
	  </varlistentry>

	  <varlistentry>
	    <term><guimenuitem>&nbsp;View</guimenuitem></term>
	    <listitem>
	     <para>
           <quote>View</quote> the output of a terminal running in 
           another Window or another <guibutton>Tab</guibutton>, in this
           terminal. This selection also opens a short sub-menu with selection
           options of <guimenuitem>Horizontally with...</guimenuitem> and
           <guimenuitem>Vertically with...</guimenuitem> to determine which
           type of split will be used in the current terminal to view the
           target terminal's output.
          </para>
          <para>
           Choose the appropriate option, and then click on the already 
           opened terminal running on another <guibutton>Tab</guibutton>, or
           in another Window. The output of that terminal will now also be
           displayed in the new split terminal. A <quote>[V]</quote> will show
           on the <guibutton>Tab</guibutton> label to denote that it is in
           <quote>View</quote> mode. Note that the <quote>View</quote>
           terminal will accept no input. Use the GUI controls to close it.
          </para>
          <para>
           This also requires that the Windows be opened with either
           <guimenuitem>New Window</guimenuitem> menu selection or with the
           &oldterm; factory server <link linkend="options">command line
           option</link> if using terminals from two Windows.
          </para>
	    </listitem>
	  </varlistentry>

	  <varlistentry>
	    <term><guimenuitem>&nbsp;New Tab with...</guimenuitem></term>
	    <listitem>
	     <para>
           Similar to the above two selections, this selection will 
           open a completely new <guibutton>Tab</guibutton>, but it will 
           be created by moving an opened split terminal from 
           the same Window to its own <guibutton>Tab</guibutton> (i.e. it is 
           not split any more), or by moving an already opened terminal
           running in another &term; Window to the current Window. After
           clicking the menu selection, then left click on the selected
           terminal, and it will be moved to its own, new
           <guibutton>Tab</guibutton> in the current Window.
          </para>
          <para>
           Again, this requires that the Windows be opened with either
           <guimenuitem>New Window</guimenuitem> menu selection or with the
           &oldterm; factory server <link linkend="options">command line
           option</link> if moving <guibutton>Tabs</guibutton> from one 
           Window to another.
          </para>
	    </listitem>
	  </varlistentry>

      </variablelist>

      <para>
       These are enabled by default and will appear at the top 
       of the menu, and may be disabled. See the <link
       linkend="edit-commands-newterm"><citetitle>New Term Tab</citetitle>
       Section</link> under <guibutton>Edit Commands</guibutton> for how to
       enable and disable these. 
      </para>

      <para>
       Below this point on the menu, any user defined <link
       linkend="edit-commands">Commands</link> would be shown.
      </para>
      <para>
       The six built-in selections (see above), and any 
       user defined commands will open a sub-menu with four 
       selections:
      </para>
      
<!-- The individual sub menus: -->
<!-- Bogus markup to force indention (hopefully) -->      

      <blockquote>
      <variablelist>
	  
       <varlistentry>
	    <term><guimenuitem>&nbsp;New Tab</guimenuitem></term>
	    <listitem>
	     <para>
           Open the new terminal with its own <guibutton>Tab</guibutton>
           and full terminal screen (i.e. not split).
          </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guimenuitem>&nbsp;HSplit</guimenuitem></term>
	    <listitem>
	     <para>
           Split the current terminal in half horizontally, and then open a
           new shell (or run a <quote>command</quote>). The split can 
           be resized manually by moving the divider with the mouse. Both 
           terminals are associated with the same <guibutton>Tab</guibutton>.
          </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guimenuitem>&nbsp;VSplit</guimenuitem></term>
	    <listitem>
	     <para>
           Split the current terminal in half vertically, and then open a
           new shell (or run a <quote>command</quote>). The split can 
           be resized manually by moving the divider with the mouse. Both 
           terminals are associated with the same <guibutton>Tab</guibutton>.
          </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guimenuitem>&nbsp;New Window</guimenuitem></term>
	    <listitem>
	     <para>
           Open the new <guibutton>Tab</guibutton> in a new 
           &term; Window.
          </para>
	    </listitem>
	  </varlistentry>

      </variablelist>
      </blockquote>
     
     <para>
      The above sub-menu entries can not be disabled or changed. 
     </para>

     <tip>
      <para>
       New entries can be added to the <guimenu>New Term</guimenu> menu from
       <link linkend="edit-commands"><guimenuitem>Edit
       Commands</guimenuitem></link> selection of the <link
       linkend="menu-settings"><guimenu>Settings Menu</guimenu></link>.       
      </para>
     </tip>
   </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
   <sect3 id="menu-edit">
    <title>Menubar - <emphasis>Edit</emphasis> menu</title>
	
     <variablelist>
	  <varlistentry>
	    <term><guimenuitem>&nbsp;Search</guimenuitem></term>
	    <listitem>
	      <para>
	       Opens a dialog-box for searching
            the terminal buffer contents. Checkboxes are provided 
            for matching upper/lower case, wrapping, and backward 
            searching.
           </para>
	    </listitem>
	  </varlistentry>
	  <varlistentry>
	    <term><guimenuitem>&nbsp;Search Again</guimenuitem></term>
	    <listitem>
	      <para>
	       Repeats the last search of the terminal buffer.
           </para>
	    </listitem>
	  </varlistentry>
	  <varlistentry>
	    <term><guimenuitem>&nbsp;Paste</guimenuitem></term>
	    <listitem>
          <para>
           Pastes the current selection (from the X clipboard) into the
           terminal at the current cursor position. This can also be achieved
           by clicking with the <keycap>MiddleMouse</keycap> button.
          </para>
	    </listitem>
      </varlistentry>
	</variablelist>
    </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->

   <sect3 id="menu-settings">
    <title>Menubar - <emphasis>Settings</emphasis> menu</title>
     <para>
      &term; configuration is accessed through the <guimenu>Settings</guimenu>
      menu. Which is available from the main <guimenu>Menubar</guimenu> and
      the <guibutton>Buttonbar</guibutton>. Tip: It is also available by
      clicking <keycap>CTRL-RightMouse</keycap> on the terminal background.
     </para>

	<variablelist>
	  <varlistentry>
	    <term><guimenuitem>&nbsp;Tab Preferences</guimenuitem></term>
	    <listitem>
	    <para>
          Opens a dialog-box
          where configuration options for
          <guibutton>Tab</guibutton> Classes (tclass) can be set. For more, see the <link
          linkend="tab-preferences"><citetitle>Tab Preferences</citetitle> Configuration Section</link>.
	    </para>
	    </listitem>
	  </varlistentry>
	  
	  <varlistentry>
	    <term><guimenuitem>&nbsp;Win Preferences</guimenuitem></term>
	    <listitem>
	    <para>
		Opens a dialog-box where configuration options for Windows Classes 
          (wclass) can be set. For more,
          see the <link linkend="win-preferences"><citetitle>Win Preferences</citetitle> Configuration Section</link>.
	    </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
       <!-- same text in two different menus -->
	    <term><guimenuitem>&nbsp;Tab Class</guimenuitem> (<emphasis>NEW v1.6.0</emphasis>)</term>
	    <listitem>
	      <para>
	       Allows changing the current <quote>Tab Class</quote> 
            from a sub-menu of all defined <quote>Classes</quote>. In this
            case, only the Class for the current <guibutton>Tab</guibutton> is
            changed. (This effects all split terminals within that
            <guibutton>Tab</guibutton> too.)
            See the <link linkend="classes"><citetitle>Terminal Configuration Classes</citetitle> Section.</link>
           </para>
	    </listitem>
	  </varlistentry>
	  
	  <varlistentry>
       <!-- same text in two different menus -->
	    <term><guimenuitem>&nbsp;Win Class</guimenuitem></term>
	    <listitem>
	      <para>
	       Allows changing the current <quote>Win Class</quote> 
            from a sub-menu of all defined <quote>Classes</quote>. In this
            case, the selected Class will be applied to the current Window and its 
            various GUI components. See the <link
            linkend="classes"><citetitle>Terminal Configuration Classes</citetitle>
            Section.</link>
           </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guimenuitem>&nbsp;Edit Commands</guimenuitem></term>
	    <listitem>
	     <para>
           This will open a Window where custom <quote>Commands</quote>
           can be defined or modified. These <quote>commands</quote> are 
           used to open new terminals. 
           See the <link linkend="edit-commands"><citetitle>Edit Commands</citetitle> Section.</link>
          </para>
	    </listitem>
	  </varlistentry>
       
       <varlistentry>
	    <term><guimenuitem>&nbsp;Keybindings</guimenuitem></term>
	    <listitem>
	     <para>
           This will open a Window where custom keyboard shortcuts for 
           various &term; functions and other uses can be defined or modified. 
           See the <link linkend="keybindings"><citetitle>Keybindings</citetitle> Section.</link>
          </para>
	    </listitem>
	  </varlistentry>
       
       <varlistentry>
	    <term><guimenuitem>&nbsp;Adjust size</guimenuitem></term>
	    <listitem>
	     <para>
           After adding or removing GUI components (e.g. the
           <guibutton>Toolbar</guibutton>), there may be a slight 
           discrepancy between the character based terminal window, and the
           pixel based X window, leaving a small amount of
           <quote>wasted</quote> space. This setting will adjust the 
           Window appropriately.
          </para>
	    </listitem>
	  </varlistentry>
       
       <varlistentry>
       <!-- same text on popup menu -->
	    <term><guimenuitem>&nbsp;Reset Terminal</guimenuitem></term>
	    <listitem>
	      <para>
            Resets the terminal parameters.  This will not clear the screen or
            move the cursor, but any subsequent terminal output will be reset
            to the default font and attributes. This is probably only useful if 
            a problem occurs, and the terminal is misbehaving.
	      </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guimenuitem>&nbsp;Reset and Clear</guimenuitem></term>
	    <listitem>
	      <para>
            Resets the terminal parameters as above, and also clears the
            screen.  All character fonts and attributes are reset.
	      </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guimenuitem>&nbsp;Color selector ...</guimenuitem></term>
	    <listitem>
	      <para>
            Can be used to drag-and-drop colors into the terminal to 
            change the background color.  
            See the <link linkend="preferences-color-tab"><citetitle>Colors
            Tab</citetitle> Section</link> for details.
           </para>
	    </listitem>
	  </varlistentry>
	</variablelist>
      </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->

   <sect3 id="menu-help">
    <title>Menubar - <emphasis>Help</emphasis> menu</title>
	
     <variablelist>
	  <varlistentry>
	    <term><guimenuitem>&nbsp;Terminal Help</guimenuitem></term>
	    <listitem>
	      <para>
            Get to this document from within &term;.
	      </para>
	    </listitem>
	  </varlistentry>
       
	  <varlistentry>
	    <term><guimenuitem>&nbsp;About ...</guimenuitem></term>
	    <listitem>
	      <para>
            A few kudos for some of the people behind 
            &term;. 
            See the <link linkend="authors"><citetitle>Authors and Credits</citetitle>
            Section.</link> 
           </para>
	    </listitem>
	  </varlistentry>
	</variablelist>
     </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->

   <sect3 id="menu-popup">
    <title>Pop-up menu</title>
	<para>
      The <guimenu>Pop-up</guimenu> control menu can always be invoked by
      clicking with <keycap>CTRL-RightMouse</keycap> anywhere within the
      terminal Window. (It may not always be necessary to hold down the
      <keycap>CTRL</keycap> key to get the pop-up menu, but do not assume this
      is always so, particularly if a <quote>selection</quote> is in progress.)
      It is provided as a simple short-cut to many of the important selections
      from the main menus. This is especially useful when the
      <guimenu>Menubar</guimenu> is hidden. Or you are too lazy to move 
      the mouse that far ;-) The following items are available:
	</para>
     
	<variablelist>
	  <varlistentry>
	    <term><guimenuitem>&nbsp;New Window</guimenuitem></term>
	    <listitem>
	      <para>
		   Opens a new &term; Window. See <link linkend="new-window">
             the section called <emphasis>New Window</emphasis></link>.
	      </para>
	    </listitem>
	  </varlistentry>
	  
	  <varlistentry>
       <!-- next three selections, in popup menu too as same text -->
	    <term><guimenuitem>&nbsp;New Shell</guimenuitem></term>
	    <listitem>
	      <para>
            Opens a new <guimenu>Tab</guimenu> with
	       a normal, interactive bash shell in a new terminal.
           </para>
	    </listitem>
	  </varlistentry>
	
	  <varlistentry>
	    <term><guimenuitem>&nbsp;Root Shell</guimenuitem></term>
	    <listitem>
	      <para>
            Opens a new <guimenu>Tab</guimenu> with
            a root shell via <command>su</command>, running in a new terminal.
            </para>
	    </listitem>
	  </varlistentry>
     
	  <varlistentry>
	    <term><guimenuitem>&nbsp;mc</guimenuitem></term>
	    <listitem>
	      <para>
            Opens a new <guimenu>Tab</guimenu> with
	       <application>Midnight Commander</application> 
            (a console file manager) in a new terminal.
           </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guimenuitem>&nbsp;Remove Term</guimenuitem></term>
	    <listitem>
	      <para>
            Remove the current terminal, and close the associated shell. If
            this is the only terminal for this Window, then the Window closes
            too.
	      </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guimenuitem>&nbsp;Change Title</guimenuitem></term>
	    <listitem>
	      <para>
	       Change the <guibutton>Tab</guibutton> title string.
           </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guimenuitem>&nbsp;Settings</guimenuitem></term>
	    <listitem>
	      <para>
	       Opens a sub-menu with four options:
           </para> 
            
            <para>
             <itemizedlist>

              <listitem>
               <para>
                 <link linkend="tab-preferences"><guimenuitem>Tab Preferences</guimenuitem></link> 
               </para>
              </listitem> 

              <listitem>
               <para>
                 <link linkend="win-preferences"><guimenuitem>Win Preferences</guimenuitem></link> 
               </para>
              </listitem> 

              <listitem>
               <para>
                 <link linkend="edit-commands"><guimenuitem>Edit Commands</guimenuitem></link> 
               </para>
              </listitem> 

              <listitem>
               <para>
                 <link linkend="keybindings"><guimenuitem>Keybindings</guimenuitem></link> 
               </para>
              </listitem> 

              <listitem>
               <para>
                 <link linkend="menu-settings"><guimenuitem>Adjust size</guimenuitem></link> 
               </para>
              </listitem> 
             
             </itemizedlist>
            </para>
	    
         </listitem>
	  </varlistentry>
       
	  <varlistentry>
       <!-- same text in two different menus -->
	    <term><guimenuitem>&nbsp;Tab Class</guimenuitem> (<emphasis>NEW v1.6.0</emphasis>)</term>
	    <listitem>
	      <para>
	       Allows changing the current <quote>Class</quote> 
            from a sub-menu of all defined <quote>Classes</quote>. In this
            case, only the Class for the current <guibutton>Tab</guibutton> is
            changed. (This effects all split terminals within that
            <guibutton>Tab</guibutton> too.) See the <link
            linkend="classes"><citetitle>Terminal Configuration Classes</citetitle>
            Section.</link>
           </para>
	    </listitem>
	  </varlistentry>
	  
	  <varlistentry>
       <!-- same text in two different menus -->
	    <term><guimenuitem>&nbsp;Win Class</guimenuitem></term>
	    <listitem>
	      <para>
	       Allows changing the current <quote>Class</quote> 
            from a sub-menu of all defined <quote>Classes</quote>. In this
            case, the Class will be applied to all <guibutton>Tabs</guibutton>
            of the current Window (this is the old behavior). See the <link
            linkend="classes"><citetitle>Terminal Configuration Classes</citetitle>
            Section.</link>
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guimenuitem>&nbsp;Bonded Terminal</guimenuitem></term>
	    <listitem>
	      <para>
            Mark this terminal as a <quote>bonded</quote> terminal 
            in this Window. All <quote>bonded</quote> terminals share the same
            input (output is not shared). <emphasis
            role="strong">Note</emphasis>: <emphasis>Use with caution and
            discretion</emphasis>! This is not appropriate for all commands
            and situations! There may be security implications to using this
            (think passwords showing in all bonded terminals), and some
            commands may not work, or produce unexpected results since the
            same command is essentially being run concurrently in all bonded
            terminals.
           </para>
	    </listitem>
	  </varlistentry>

        <varlistentry>
        <!-- same text in here twice for all three selections -->
	    <term><guimenuitem>&nbsp;Show menubar</guimenuitem></term>
	    <listitem>
	      <para>
            Hides the main <guimenu>Menubar</guimenu> on the terminal if
            unchecked, creating a neater, smaller terminal. The 
            <guimenu>Menubar</guimenu> can be restored using the <link
            linkend="menu-popup"> <guimenu>pop-up</guimenu> menu</link>.
	      </para>
	    </listitem>
	  </varlistentry>
	  
        <varlistentry>
	    <term><guimenuitem>&nbsp;Show toolbar</guimenuitem></term>
	    <listitem>
	      <para>
            Hides the <guimenu>Toolbar</guimenu> if unchecked. The
            <guibutton>Toolbar</guibutton> can be retrieved using the <link
            linkend="menu-popup"> <guimenu>pop-up</guimenu> menu</link> or the
            main <guimenu>Menubar</guimenu>.
	      </para>
	    </listitem>
	  </varlistentry>
       
        <varlistentry>
	    <term><guimenuitem>&nbsp;Show buttonbar</guimenuitem></term>
	    <listitem>
	      <para>
            Hides the <guimenu>Buttonbar</guimenu> if unchecked. The
            <guibutton>Buttonbar</guibutton> can be retrieved using the <link
            linkend="menu-popup"> <guimenu>pop-up</guimenu> menu</link> or the
            main <guimenu>Menubar</guimenu>.
	      </para>
	    </listitem>
	  </varlistentry>

        <varlistentry>
	    <term><guimenuitem>Secure keyboard</guimenuitem></term>
	    <listitem>
	    <para>
           This option forces all the keyboard input to be sent
	      directly to the terminal, and bypass anything else. This
	      is useful in the (rare) situation when the same X server
	      is used by many users, and the X server is not using
	      proper authentication methods, thus making it possible
	      for other users to snoop on what you are typing. In such
	      a situation, it is advised that you switch to "secure
	      keyboard" mode before entering any confidential
	      information, such as passwords.
	    </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
       <!-- same text on popup menu -->
	    <term><guimenuitem>&nbsp;Reset Terminal</guimenuitem></term>
	    <listitem>
	      <para>
            Resets the terminal parameters.  This will not clear the screen or
            move the cursor, but any subsequent terminal output will be reset
            to the default font and attributes. This is probably only useful if 
            a problem occurs, and the terminal is misbehaving.
	      </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guimenuitem>&nbsp;Reset and Clear</guimenuitem></term>
	    <listitem>
	      <para>
            Resets the terminal parameters as above, and also clears the
            screen.  All character fonts and attributes are reset.
	      </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guimenuitem>Open in browser</guimenuitem></term>
	    <listitem>
	     <para>
          Depending on the URL type, this menu selection might also 
          say <guimenuitem>Send Mail</guimenuitem>, <guimenuitem>Open in
          Browser</guimenuitem> or <guimenuitem>Open in File
          Browser</guimenuitem>.
         </para>
         <para>
          If the mouse pointer is over a URL (for example, an Internet
          address) when the <guibutton>Pop-up</guibutton> menu is invoked,
          then this option becomes available to launch a browser (or other
          appropriate application) to view the URL, send email, etc. 
          See the <link linkend="url-highlight"><citetitle>Launching
          URLs</citetitle> Section.</link> 
         </para>
	    </listitem>
	  </varlistentry>
     
     </variablelist>
      
    </sect3>
   </sect2>
  </sect1>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
    <sect1 id="preferences">
     <title>Preferences Configuration</title>
      <para>
       &term; configuration options are set via the
       <guimenuitem>Tab Preferences</guimenuitem> and <guimenuitem>Win
       Preferences</guimenuitem> selections, which are located on 
       the <guimenu>Settings</guimenu> menu, or similar
       selections on the <guimenu>Pop-up</guimenu> menu. 
       Each will open a Window containing the various options 
       available for that particular <link linkend="classes">Class</link>
       (e.g. Win). <guimenu>Preferences</guimenu> options are grouped into
       their own <quote>Tabs</quote>, according to similar functionality.
      </para>

      <para>
       Changing any settings in either place, will effect the active 
       Class only. If no Class has been explicitly set, then automatically 
       &term; uses a built-in Class called <quote>Default</quote>.
       (If the Class concept is confusing, see the next section, 
       <link linkend="classes"><citetitle>Terminal Configuration
       Classes</citetitle></link>.)
      </para>
<!--
This won't center:
   <figure pgwide="0" float="0"><title>The Preferences Dialog</title>
    <mediaobject>
       <imageobject>
        <imagedata  align="center" fileref="&figures;/mgt_preferences-150.jpg" format="jpg">
       </imageobject> 
       <textobject>
        <phrase>Preferences Dialog</phrase>
       </textobject>
    </mediaobject>
   </figure>
-->
<bridgehead renderas="sect3">The <emphasis>Tab Preferences</emphasis> Dialog</bridgehead>
<informaltable frame=none label="" pgwide="1">
 <tgroup cols=1 align="center" colsep=1 rowsep=1>
  <colspec colname=c1 align="center">
   <tbody>
    <row>
     <entry align="center">
      <inlinegraphic  fileref="&figures;/mgt_tpreferences-160.jpg"></inlinegraphic>
    </entry>
   </row>
  </tbody>
 </tgroup>
</informaltable>

 <sect2 id="tab-preferences">
 <title>Tab Preferences</title>
 <para>
  <guibutton>Tab Preferences</guibutton> are those configuration options 
  that can be applied to <quote><guibutton>Tab</guibutton></quote> Classes. 
  These options are all available on a per <guibutton>Tab</guibutton> basis 
  for a high degree of configuration flexibility. 
 </para>

<!--   ~~~~~       New section      ~~~~~     -->
   <sect3 id="preferences-general-tab">
    <title>The <emphasis>General</emphasis> Tab</title>
	<para>
	  While most options are self-explanatory, a brief explanation 
       of all options follows. Most options are simple checkboxes 
       that are either enabled or disabled. After making any
       changes, be sure to click the <guibutton>Apply</guibutton> button to
       save and activate changes.
	</para>

	<variablelist>
	  <varlistentry>
	    <term><guibutton>&nbsp;Terminal Class</guibutton></term>
	    <listitem>
	      <para>
            Define a new <quote>Class</quote> from the currently selected
            settings, essentially cloning the configuration to a new class.
            Classes can also be deleted here. Refer to the section on <link
            linkend="classes">Classes</link> for further information
            on &oldterm; <quote>Classes</quote>.
	      </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guibutton>&nbsp;Font</guibutton></term>
	    <listitem>
	      <para>
	       Click the <guibutton>Browse</guibutton> button to choose 
            a font from the GNOME font chooser. Or, you can alternately 
            click the input field, and hand edit the font entry. 
            (There is also a <link linkend="options">command line</link> 
            option for the preferred font.)
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Bold Font</guibutton> (<emphasis>NEW v1.5.2</emphasis>)</term>
	    <listitem>
	      <para>
            Same as above, but select a (different) font to use for bold fonts
            if the <guibutton>Use bold font, do not overstrike</guibutton>
            feature is enabled (see below).
           </para>
	    </listitem>
	  </varlistentry>


       <varlistentry>
	    <term><guibutton>&nbsp;Enable bold text</guibutton></term>
	    <listitem>
	      <para>
             Enable <emphasis role="strong">bold</emphasis> text for
             applications that request it (example: man pages).
           </para>
	    </listitem>
	  </varlistentry>

         <varlistentry>
	    <term><guibutton>&nbsp;Use bold text color</guibutton> (<emphasis>NEW v1.5.2</emphasis>)</term>
	    <listitem>
	      <para>
             Replace the bold text attribute with a color (color is definable
             in the <guibutton>Tab </guibutton><link linkend="preferences-color-tab"><citetitle>Colors
             Tab</citetitle></link>).
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Swap Delete/Backspace</guibutton></term>
	    <listitem>
	      <para>
            If your <keycap>DEL</keycap> and <keycap>BS</keycap> are 
            working backward from what you expect, this will reverse 
            it.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Delete generates DEL/^H</guibutton></term>
	    <listitem>
	      <para>
            Try this if having problems with the <keycap>DEL</keycap> key.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Enable multibyte support</guibutton></term>
	    <listitem>
	      <para>
             Turn on multi-byte support for font characters.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Use bold font, do not overstrike</guibutton> (<emphasis>NEW v1.5.2</emphasis>)</term>
	    <listitem>
	      <para>
            Allow specification of a different font for bold text only (see
            above). This should be a font of the same size as the normal 
            font (though different family is OK), and both fonts should 
            be consistent as to whether they are specified as pixels or
            points.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Silence terminal bell</guibutton></term>
	    <listitem>
	      <para>
             Turn off the terminal bell (^G).
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Blinking cursor</guibutton></term>
	    <listitem>
	      <para>
             If you prefer a blinking style cursor, turn it on here.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;No Terminal Border</guibutton></term>
	    <listitem>
	      <para>
             The <quote>border</quote> is a very fine frame around 
             the edge of the terminal Window. Turn on or off here.
             Turn off <link linkend="preferences-general-win"><guibutton>No
             Notebook Border</guibutton></link> also to get a complete
             borderless effect.
           </para>
	    </listitem>
	  </varlistentry>
       
       <varlistentry>
	    <term><guibutton>&nbsp;Open IM (input method)</guibutton></term>
	    <listitem>
	      <para>
             Input method is useful for ideographic languages that 
             require a pre-editing stage.
           </para>
	    </listitem>
	  </varlistentry>


	  <varlistentry>
	    <term><guibutton>Select-by-word characters</guibutton></term>
	    <listitem>
	      <para>Defines a list of characters (or
		<emphasis>character classes</emphasis>) that should be
		considered 'word characters'.  These are used when
		<link linkend="pointer-select">selecting text</link>
		by word with the mouse (i.e. double-click).
	      </para>
	    </listitem>
	  </varlistentry>
       
	</variablelist>
    </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
   <sect3 id="preferences-image">
    <title>The <emphasis>Image</emphasis> Tab</title>
    <para>
	In the <guibutton>Image</guibutton> tab, you can set various
     options for the &term; Window background.
	The available choices are:
	</para>

      <variablelist>
       <varlistentry>
	    <term><guibutton>&nbsp;None</guibutton></term>
	    <listitem>
	      <para>
            If checked, then disable transparent and pixmap backgrounds.
            In this case, &term; will use the background color as set in
            <guilabel>Colors</guilabel>. 
            See the <guibutton>Tab</guibutton> <link
            linkend="preferences-color-tab"><citetitle>Colors Tab</citetitle>
            Section.</link> 
           </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guibutton>&nbsp;Background pixmap</guibutton></term>
	    <listitem>
	      <para>
            This option allows you to choose an image file to be used as
            background. Press the <guibutton>Browse</guibutton> button to
            choose an image file. The image can also be scaled or tiled.
           </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guibutton>&nbsp;Transparent</guibutton></term>
	    <listitem>
	      <para>
            With this option, &term; will use a pseudo-transparent background.
            It is not truly transparent; it just mimics the background of your
            desktop (root Window), much like a chameleon does. Do not expect
            to see other Windows through the &term; Window though.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Shaded Background</guibutton></term>
	    <listitem>
	      <para>
            <guilabel>Pixmap</guilabel> and <guilabel>Transparent</guilabel>
            backgrounds can also be <quote>shaded</quote>, which will "dim"
            the background.  With the slider control, you
            can choose the degree of shading to use.
           </para>
	    </listitem>
	  </varlistentry>
        
       <varlistentry>
	    <term><guibutton>&nbsp;Adjust Contrast</guibutton> (<emphasis>NEW v1.5.2</emphasis>)</term>
	    <listitem>
	      <para>
            You can also adjust the <quote>contrast</quote> of
            <guilabel>Pixmap</guilabel> and <guilabel>Transparent</guilabel>
            backgrounds to brighter or darker values. Click the button 
            on the left to enable, then use the slider to adjust.
           </para>
	    </listitem>
	  </varlistentry>
        
       <varlistentry>
	    <term><guibutton>&nbsp;Gamma Correction</guibutton> (<emphasis>NEW v1.5.2</emphasis>)</term>
	    <listitem>
	      <para>
            The gamma correction of the background can also be adjusted to
            lesser or greater values. Again, click the button, and adjust 
            with the slider control. Remember to click <guibutton>Apply</guibutton>
            when done.
           </para>
	    </listitem>
	  </varlistentry>
        
       <varlistentry>
	    <term><guibutton>&nbsp;Tint Background</guibutton></term>
	    <listitem>
	      <para>
            <guilabel>Pixmap</guilabel> and <guilabel>Transparent</guilabel>
            backgrounds can also be tinted with the <guibutton>Tint
            background</guibutton> checkbox. This will color the background
            according to the color value in the color selector control to the
            right. Just click on this to select a color to use for the 
            <quote>tint</quote>. 
           </para>
	    </listitem>
	  </varlistentry>
	   
       <varlistentry>
	    <term><guibutton>&nbsp;Text Shadow</guibutton></term>
	    <listitem>
	      <para>
            This will enable <quote>font shadowing</quote>, which is a
            technique for drawing a very fine outline around each character 
            when the terminal is in <quote>image</quote> mode. This can
            improve readability of text on transparent or pixmapped
            backgrounds. And just looks cool ;-)
            See the <guibutton>Tab</guibutton> <link
            linkend="preferences-color-tab"><citetitle>Colors Tab</citetitle>
            Section</link> below for selecting the shadow
            color.
           </para>
	    </listitem>
	  </varlistentry>
	   
       </variablelist>
     </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->

   <sect3 id="preferences-color-tab">
    <title>The <emphasis>Colors</emphasis> Tab</title>
	<para>
      The <guilabel>Colors</guilabel> tab is used to configure various color
      settings. &term; fully supports the color extensions used by
      <application>xterm</application>. 
     </para>

	<variablelist>
	  <varlistentry>
	    <term><guibutton>&nbsp;Color scheme</guibutton></term>
	    <listitem>
	     <para> 
           Some applications are capable of using the color capabilities of a
           terminal. The way the interaction between an application and the
           terminal is set up is that the application can request one of
           sixteen named colors (ANSI colors), such as "blue" or "bright red":
           for example, <application>mutt</application> mail reader can use
           red color to show urgent messages. However, it is up to the
           terminal to decide which exact tint to use for "bright red" or
           "blue". This collection of sixteen colors is called a
           <emphasis>palette</emphasis>, or "color scheme".
	    </para>
	    <para>&term; supports four color schemes: the
		<guilabel>Linux console</guilabel> scheme, the
		<guilabel>Color Xterm</guilabel> scheme, the
		<guilabel>rxvt</guilabel> color scheme, and a
		completely customizable color scheme. They all are
		slightly different: for example, Linux console uses
		light gray in place of "white", while rxvt uses real
		white.
	    </para>
	    <para>
		If you have selected the <guilabel>custom</guilabel>
		option, then all 16 colors (nominally 8 colors and 8
		bright colors) can be customized by clicking on the
		<quote>Color palette</quote> buttons at the bottom 
          of the <interface>dialog</interface>.
	    </para>
	    </listitem>
	  </varlistentry>
          
	  <varlistentry>
	    <term><guibutton>&nbsp;Foreground/Background Color</guibutton></term>
	    <listitem>
	    <para>Here you can set the default terminal foreground
		and background colors, which are used when no colors
		have been requested by the application running inside
		of &term;.
	    </para>
	      
	    <para>
          The following options are available: <guilabel>white on
          black</guilabel>, <guilabel>black on white</guilabel>,
          <guilabel>green on black</guilabel>, <guilabel>black on light
          yellow</guilabel>, and <guilabel>Custom colors</guilabel>. How these
          actually appear depends on the palette selected (for the
          <guilabel>white on black</guilabel> and <guilabel>black on
          white</guilabel> options). <guilabel>Custom colors</guilabel> allows
          you to select the default foreground and background colors
          individually and separate from the palette.
	    </para>

	    <para>
          Additionally, the user can drag a color from the rectangular box
          beneath the color wheel from any GNOME color selector or color
          source and drop it into the terminal.  If the user drops the color
          on a blank space, it will set the background, if the user drops the
          color on a cell that contains a character, it will change the
          foreground.  This will also automatically change
          foreground/background type to <guilabel>Custom colors</guilabel>
          and set the custom foreground or background color.
	    </para>
	    </listitem>
	  </varlistentry>

	  <varlistentry>
	    <term><guibutton>&nbsp;Foreground Color</guibutton></term>
	    <listitem>
	      <para>
            This is the color for font characters and cursor.
		 </para>
	    </listitem>
	  </varlistentry>
	
	  <varlistentry>
	    <term><guibutton>&nbsp;Background Color</guibutton></term>
	    <listitem>
	      <para>
            The background color to be used for the terminal Window. Except
            for transparent and pixmap backgrounds, in which case it is
            ignored.
		 </para>
	    </listitem>
	  </varlistentry>
	
	  <varlistentry>
	    <term><guibutton>&nbsp;Text shadow color</guibutton></term>
	    <listitem>
	      <para>
		  The color to be used for the shadow effect if 
            <guibutton>Text Shadow</guibutton> is enabled. 
            See the <link linkend="preferences-image"><citetitle>Image Tab</citetitle> Section.</link>
           </para>
	    </listitem>
	  </varlistentry>
     
	  <varlistentry>
	    <term><guibutton>&nbsp;Bold text color</guibutton> (<emphasis>NEW v1.5.2</emphasis>)</term>
	    <listitem>
	      <para>
		  Replace bold text with text of this color. 
            See the <link linkend="preferences-general-tab"><citetitle>General
            Tab</citetitle></link> to turn this feature on.
           </para>
	    </listitem>
	  </varlistentry>
     
     </variablelist>
     <para>
      <guibutton>Tab</guibutton> label colors are configured 
      in <link linkend="preferences-color-win">Win Class Preferences</link>.
     </para>
    </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->

    <sect3 id="preferences-scrolling">  
     <title>The <emphasis>Scrolling</emphasis> Tab</title>
    
       <variablelist> 
       
        <varlistentry>
	    <term><guibutton>&nbsp;Scrollbar position</guibutton></term>
	    <listitem>
	      <para>
            For the <guibutton>Scrollbar</guibutton> position, 
		  select from the list: either <quote>Left</quote>, 
            <quote>right</quote>, or <quote>hidden</quote>.
           </para>
	    </listitem>
	  </varlistentry>

        <varlistentry>
	    <term><guibutton>&nbsp;Scrollback lines</guibutton></term>
	    <listitem>
	      <para>
            Set the number of lines that will be maintained in the 
            scrollback buffer. The buffer history can be viewed 
            by using the <guibutton>Scrollbar</guibutton>, or the 
            keyboard (<keycap>SHIFT-PageUp</keycap> and 
            <keycap>SHIFT-PageDown</keycap>).
           </para>
	    </listitem>
	  </varlistentry>

        <varlistentry>
	    <term><guibutton>&nbsp;Scroll on keystroke</guibutton></term>
	    <listitem>
	      <para>
            If this is enabled, then when you have scrolled backward 
            into the buffer, and press any key, the screen will automatically 
            jump back to the cursor position. If not, keystrokes are still
            echoed to the screen, but may not be visible.
           </para>
	    </listitem>
	  </varlistentry>

        <varlistentry>
	    <term><guibutton>&nbsp;Scroll on output</guibutton></term>
	    <listitem>
	      <para>
            If this is enabled, then when you have scrolled backward 
            into the buffer, and any output is echoed to the screen (either
            by you typing or some process that generates the output), the
            screen will automatically jump back to the end of the terminal
            buffer so that the output is immediately visible.
           </para>
	    </listitem>
	  </varlistentry>
      
      </variablelist> 

     </sect3>
     
     <!--  ~  End section  ~  -->

     
   <!--   ~~~~~       New section      ~~~~~     -->
   <sect3 id="preferences-logs">
    <title>The <emphasis>Logs</emphasis> Tab (<emphasis>NEW v1.6.0</emphasis>)</title>
     <para>
      &term; can keep track of user log-ins using standard UNIX
      <quote>utmp</quote> style logging. For this to work correctly, 
      <link linkend="mgt-pty-helper"><command>mgt-pty-helper</command></link>
      must be installed correctly. See locally installed man pages for more 
      details on what each of these does.
     </para>
     
     <variablelist> 
      
      <varlistentry>
       <term><guibutton>&nbsp;Update lastlog entry</guibutton></term>
        <listitem>
         <para>
          Enable or disable <quote>lastlog</quote> tracking.
         </para>
        </listitem>
      </varlistentry>
      
      <varlistentry>
       <term><guibutton>&nbsp;Update wtmp entry</guibutton></term>
        <listitem>
         <para>
          Enable or disable <quote>wtmp</quote> tracking.
         </para>
        </listitem>
      </varlistentry>
      
      <varlistentry>
       <term><guibutton>&nbsp;Update utmp entry</guibutton></term>
        <listitem>
         <para>
          Enable or disable <quote>utmp</quote> tracking.
         </para>
        </listitem>
      </varlistentry>

     </variablelist> 

   </sect3>
    
  </sect2>
    
  <!--  ~  End section  ~  -->

    
  <!--   ~~~~~       New section      ~~~~~     -->
  <sect2 id="win-preferences">
   <title>Win Preferences</title>
   <para>
    <guibutton>Win Preferences</guibutton> are those configuration options
    that can be applied to <quote><guibutton>Win</guibutton></quote> Classes.
    These options apply to those configuration attributes that are a
    Windows-only type feature, such as whether the <guibutton>Toolbar</guibutton>
    is enabled or not, or the colors of the <guibutton>Tab</guibutton> button labels.
   </para>
    

<!--   ~~~~~       New section      ~~~~~     -->
   <sect3 id="preferences-general-win">
    <title>The <emphasis>General</emphasis> Tab</title>
	<para>
	  Basic configuration options that can be applied to Windows Classes.
     </para>

	<variablelist>
	  <varlistentry>
	    <term><guibutton>&nbsp;Window Class</guibutton></term>
	    <listitem>
	      <para>
            Define a new <quote>Window Class</quote> (wclass) from the
            currently selected settings, essentially cloning the configuration
            to a new class. Windows Classes can also be deleted here. Refer to
            the section on <link linkend="classes">Classes</link> for further
            information on &term; <quote>Classes</quote>.
	      </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
	    <term><guibutton>&nbsp;Hide menu bar</guibutton></term>
	    <listitem>
	      <para>
            Hide the main <guimenu>Menubar</guimenu> at the top of the Window,
            or not.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Hide tool bar</guibutton></term>
	    <listitem>
	      <para>
             Hide the <guibutton>Toolbar</guibutton> if checked.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Hide button bar</guibutton></term>
	    <listitem>
	      <para>
             Disable the <guibutton>ButtonBar</guibutton> if checked.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Confirm window closing</guibutton></term>
	    <listitem>
	      <para>
             Alert the user before closing the &term; Window.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><anchor id="login"><guibutton>Use --login by default</guibutton></term>
	    <listitem>
	      <para>If this option is selected, &term; will launch 
            the built-in, hard-set shells in login mode (the ones at the 
            top of the <guimenu>New Term</guimenu> menu). Your login
            initialization scripts will be run in this mode. See also the
            information about <option>--login</option> and
            <option>--nologin</option> <link linkend="options">command line
            options</link>.  
	      </para>
	    </listitem>
	  </varlistentry>
       
       <varlistentry>
	    <term><guibutton>&nbsp;No Notebook Border</guibutton></term>
	    <listitem>
	      <para>
             The <quote>border</quote> is a very fine frame around 
             the inside edge of the GTK Window. Turn on or off here.
             Turn off <guibutton>No Terminal Border</guibutton> 
             in <link linkend="tab-preferences"><guimenuitem>Tab
             Preferences</guimenuitem></link> also to get a complete
             borderless effect.
           </para>
	    </listitem>
	  </varlistentry>

       <varlistentry>
	    <term><guibutton>&nbsp;Window Title</guibutton></term>
	    <listitem>
	      <para>
            Enter a name to be used as the title that will appear on the 
            X Window titlebar.
           </para>
	    </listitem>
	  </varlistentry>
       
	</variablelist>
    </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
<sect3 id="tabs-tab">
<title>The <emphasis>Tabs</emphasis> Tab</title>
 <para>
  This is where much of the configuration for the <guibutton>Tabs</guibutton> that
  represent multi-terminals is done.
 </para>

 <variablelist>
  
  <varlistentry>
    <term><guibutton>&nbsp;Reopen saved terminals</guibutton></term>
    <listitem>
      <para>
       This option <emphasis>enables</emphasis> saving the current
       <guibutton>Tab</guibutton> set-up, but you will need to actually do the
       saving, either manually with the <guimenuitem>Save Terminals</guimenuitem>
       menu selection of the <guimenu>File</guimenu> menu (see above). Or,
       with the <guibutton>Autosave terminals on exit</guibutton> feature (see
       below). This just enables/disables these other features. Re-opening
       will not restore the buffer contents or shell command history. Just
       the <guibutton>Tab</guibutton> layout and titles. (See the 
       <link linkend="appendix"><citetitle>Command Examples</citetitle>
       Section</link>, for a very useful script that can restore unique 
       history files.)
      </para>
    </listitem>
  </varlistentry>

  <varlistentry>
    <term><guibutton>&nbsp;Restore saved terms paths</guibutton></term>
    <listitem>
      <para>
       When re-opening <guibutton>Tabs</guibutton> (see above), restore 
       the shell <literal>path</literal> (pwd) as well.
      </para>
    </listitem>
  </varlistentry>

  <varlistentry>
    <term><guibutton>&nbsp;No Numeric Prefix</guibutton></term>
    <listitem>
      <para>
       Without this checked, &term; will prepend a number in front 
       of the <guibutton>Tab</guibutton> label to designate its 
       position: <literal>[ 3-My Projects ]</literal>.
       Also, on the Window title. Check this to turn off this feature.
      </para>
    </listitem>
  </varlistentry>

  <varlistentry>
    <term><guibutton>&nbsp;Titled Tabs</guibutton></term>
    <listitem>
      <para>
       If enabled, the <guibutton>Tab</guibutton> label will match the Window
       title. Some applications may change the Window Title dynamically (e.g.
       <application>vim</application> or through
       <application>xterm</application> escape sequences). In this case, the
       <guibutton>Tab</guibutton> title will change also to match the Window
       Title. And conversely, manually changing the <guibutton>Tab</guibutton>
       label, will be reflected in the Window title. If not checked, then the
       <guibutton>Tab</guibutton> title stays constant. This should be
       disabled if you want to be able to change <guibutton>Tab</guibutton>
       labels with <keycap>MiddleMouse</keycap> (and not have it change).
      </para>
    </listitem>
  </varlistentry>

  <varlistentry>
    <term><guibutton>&nbsp;Restore saved terms commands</guibutton></term>
    <listitem>
      <para>
       Re-execute any &term; customized start-up <quote>Commands</quote> on
       application start-up. 
      </para>
    </listitem>
  </varlistentry>

  <varlistentry>
    <term><guibutton>&nbsp;Restore saved terms classes</guibutton>
    (<emphasis>NEW v1.6.0</emphasis>)</term> 
    <listitem>
      <para>
       Automatically restore the previous <quote>Tab Class</quote> (tclass)
       state on application start-up. This requires that the
       <guibutton>Reopen tabs</guibutton> option is also enabled (see above).
      </para>
    </listitem>
  </varlistentry>

  <varlistentry>
    <term><guibutton>&nbsp;Autosave terminals on exit</guibutton></term>
    <listitem>
      <para>
       Save <guibutton>Tabs</guibutton> for the current <quote>Class</quote>
       automatically when the Window is closed. <guibutton>Tab</guibutton>
       configuration can also be saved manually with the <guimenuitem>Save
       Terminals</guimenuitem> menu selection of the <guimenu>File</guimenu> 
       menu (see above). This also requires that the <guibutton>Reopen
       tabs</guibutton> option is enabled (see above, this section). 
      </para>
      <para>
       This is different from saving the gnome-session configuration when 
       logging out of GNOME, which saves all &term; <guibutton>Tabs</guibutton>
       for all opened Windows, <emphasis>and</emphasis> all Classes.
      </para>
    </listitem>
  </varlistentry>

  <varlistentry>
    <term><guibutton>&nbsp;Max Chars in Titled Tabs</guibutton></term>
    <listitem>
      <para>
       Maximum number of total characters to use for <guibutton>Tab</guibutton> 
       titles. Useful only if <guibutton>Titled Tabs</guibutton> is enabled.
      </para>
    </listitem>
  </varlistentry>

  <varlistentry>
    <term><guibutton>&nbsp;Tab position</guibutton></term>
    <listitem>
      <para>
       Choose from the droplist the relative position within 
       the Window: <quote>top</quote> (default), <quote>bottom</quote>,
       <quote>right</quote>, <quote>left</quote>, or <quote>none</quote>.
      </para>
    </listitem>
  </varlistentry>
 
 </variablelist>

 </sect3>
<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->

   <sect3 id="preferences-color-win">
    <title>The <emphasis>Colors</emphasis> Tab</title>
	<para>
      The <guilabel>Win Preferences Colors</guilabel> tab is used to configure
      color values of the &term; <guibutton>Tab</guibutton> labels. 
     </para>

	<variablelist>
     
	  <varlistentry>
	    <term><guibutton>&nbsp;Terminal is changing</guibutton></term>
	    <listitem>
	      <para>
            The color used for inactive <guibutton>Tab</guibutton> labels to 
            indicate that the terminal buffer is in the process of changing.
            This is so the user is alerted that something is happening in a 
            terminal, other than the current one. The default is
            <literal>red</literal>.
		 </para>
	    </listitem>
	  </varlistentry>

	  <varlistentry>
	    <term><guibutton>&nbsp;Terminal changed</guibutton></term>
	    <listitem>
	      <para>
            The color used for inactive <guibutton>Tab</guibutton> labels to 
            indicate that the terminal buffer <emphasis>has</emphasis> 
            undergone a change. This is so the user is alerted that something
            has happened in a terminal other than the current one, and that
            the activity has either stopped or paused. The default is
            <literal>blue</literal>.
		 </para>
	    </listitem>
	  </varlistentry>

	  <varlistentry>
	    <term><guibutton>&nbsp;Terminal State Default colors</guibutton> 
         (<emphasis>NEW v1.6.0</emphasis>)</term>
	    <listitem>
	      <para>
		  Use to reset the <guibutton>Tab</guibutton> label colors back 
            to the default colors of red and blue.
           </para>
	    </listitem>
	  </varlistentry>
     </variablelist>
    </sect3>

  </sect2>
    
 </sect1>
<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
  <sect1 id="classes">
    <title>Terminal Configuration <emphasis>Classes</emphasis></title> 

     <para>&term;, like &oldterm;, allows for different
      configuration profiles to suit different uses -- different
      fonts; different start-up <guibutton>Tabs</guibutton>; background
      colors; presence, absence or position of scrollbars; and so on. These
      configuration profiles are known as <quote>Classes</quote>. &term;'s
      Classes are much more versatile and powerful than &oldterm;'s.
     </para>
     <para>
      There is always an active <quote>Class</quote> any time &term; is 
      started. If you don't explicitly specify one, you are automatically
      assigned the built-in <quote>Default</quote> Class. 
     </para>
     <para>
      There are two Class categories: <guimenuitem>Win Class</guimenuitem> and
      <guimenuitem>Tab Class</guimenuitem> (each with its own
      <quote>default</quote> profile). The distinction includes both the scope
      (i.e. whether the Class pertains to a Tab or a Window), and also which
      configuration attributes belong to that particular Class. In other
      words, configuration preferences uniquely belong to one Class or the
      other. For example, a background image is a <guibutton>Tab</guibutton>
      attribute only, since backgrounds can be configured individually for
      each <guibutton>Tab</guibutton>. The same for fonts, font colors, and
      various other configuration preferences. Most configuration preferences
      are <guibutton>Tab</guibutton> attributes, which gives a great deal of
      flexibility. 
     </para>
     <para>
      You can see which preferences belong to which Class from the <link
      linkend="tab-preferences"><guimenuitem>Tab
      Preferences</guimenuitem></link> and <link
      linkend="win-preferences"><guimenuitem>Win
      Preferences</guimenuitem></link> menu selections of the
      <guimenu>Settings</guimenu> menu. Any changes to the current
      preferences, will be made to the currently active Class. Again, if no
      custom Class has been defined, then these changes would apply to the
      <quote>Default</quote> Class.
     </para>
     <para>
      If you are upgrading from pre-v1.6.0 versions of &term;, this two 
      Class distinction is radically different behavior and will require 
      some re-configuration. Notably, start-up <guibutton>Tabs</guibutton> 
      will have to be re-defined since any previously defined Classes 
      will have been converted to Tab Classes (tclass).
     </para>
     
     <para>      
      To define a new <quote>Class</quote>, invoke the
      appropriate <guimenu>Preferences</guimenu> dialog-box from the
      <guimenu>Settings</guimenu> menu. There are separate menu selections 
      for <guimenuitem>Win Preferences</guimenuitem> and
      <guimenuitem>Tab Preferences</guimenuitem>. 
      Then, click the <guibutton>New</guibutton> button near the top, and you
      will be prompted for a new Class name. The Class is created and
      activated at this point. You also can select whatever other settings
      and configuration options you prefer (these changes will be made
      to your currently opened terminal[s], so you can see what they look
      like). Before closing the <guimenu>Preferences</guimenu> box, be sure to
      click <guibutton>Apply</guibutton>.
    </para>
    <para>
     To activate a specific Class at program startup you can use the
     <option>--tclass</option> (for Tab specific Classes), or
     <option>--wclass</option> (for Window Classes)  command line options
     (see the <link linkend="options"><emphasis>Options</emphasis>
     Section</link> below). Classes of both types can also be specified for
     <link linkend="startup-tabs">start-up <guibutton>Tabs</guibutton></link>,
     which is the easiest way of having customized configuration profiles
     automatically in place when &term; is started.
    </para>
    <para>
     Deleting a Class is roughly the same procedure. 
    </para>
    <para> 
     To dynamically change the currently active Class, select either
     <guimenuitem>Tab class</guimenuitem> or <guimenuitem>Win
     class</guimenuitem> from the <guimenu>Settings</guimenu> menu. These
     will contain a sub-menu listing all defined Classes, from which you can
     choose one of the selections. Or the same can be done from the control
     <guimenu>Pop-up</guimenu> menu, accessed with
     <keycap>CTRL-RightMouse</keycap>.
    </para>


<!--   ~~~~~       New section      ~~~~~     -->
<sect2>
<title>Summary</title>

   <para>
      Summary of &term; Class features:
   </para>
     
     <para>
      <itemizedlist>
       <listitem>
        <para>
         &term; Classes are a way to save differing user-defined configuration
         profiles. A user can conceivably define many such profiles.
        </para>
       </listitem> 
       <listitem>
        <para>
         There is always an active Class in effect. If none is specified, 
         the built-in Class named <quote>Default</quote> automatically becomes
         the current Class.
        </para>
       </listitem> 
       <listitem>
        <para>
         Configuration preferences belong to one Class or the other, e.g. a
         background color is an attribute of the <guimenuitem>Tab Class</guimenuitem>.
         And <guibutton>Toolbar</guibutton> being enabled is an attribute of the 
         <guimenuitem>Window Class</guimenuitem>.
        </para>
       </listitem> 
       <listitem>
        <para>
         Win Class (wclass) attributes are those that logically belong to the
         entire Window, such as Window title, <guibutton>Tab</guibutton> 
         location.
        </para>
       </listitem> 
       <listitem>
        <para>
         Tab Class (tclass) attributes are those that can be defined for each
         <guibutton>Tab</guibutton>, and includes such attributes as terminal
         font, background color, transparency, bold font color, etc.
        </para>
       </listitem> 
       <listitem>
        <para>
         <guibutton>Tab</guibutton> Classes effect all terminals (i.e if there
         are any split terminals), that may exist within that
         <guibutton>Tab</guibutton>.
        </para>
       </listitem> 
       <listitem>
        <para>
         Classes can be specified on the command line (<option>--tclass</option>
         and <option>--wclass</option>) as one method of specifying a Class.
        </para>
       </listitem> 
       <listitem>
        <para>
         Classes can be dynamically changed from the <guimenu>Settings</guimenu> 
         menu.
        </para>
       </listitem> 
       <listitem>
        <para>
         Classes can be created and removed using the <link
         linkend="tab-preferences"><guimenu>Tab Preferences</guimenu></link>
         and <link linkend="win-preferences"><guimenu>Win
         Preferences</guimenu></link> dialog-boxes.
        </para>
       </listitem> 
       <listitem>
        <para>
         Start-up <guibutton>Tabs</guibutton> can be associated with both 
         Class types in <link linkend="startup-tabs"><guimenu>Edit
         Commands</guimenu></link>. 
        </para>
       </listitem> 
       <listitem>
        <para>
          Class names are case <emphasis>in</emphasis>sensitive.
        </para>
       </listitem> 
       <listitem>
        <para>
         You can use the same name for both a Win Class and a Tab Class.
         But note that if a Win Class and a Tab Class have the same name, 
         this does not mean they share the same configuration preferences. They 
         can't, since these preferences are unique to one Class or the other.
        </para>
       </listitem> 
      </itemizedlist>
     </para> 
  
  </sect2>
 </sect1>
<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
<sect1 id="edit-commands">
 <title>Edit Commands</title>
 <para>
  &term;'s <guimenuitem>Edit Commands</guimenuitem> function is a way to
  customize the creation of new terminals. <guimenuitem>Edit
  Commands</guimenuitem> is accessed from the <link
  linkend="menu-settings"><guimenu>Settings</guimenu></link> menu. 
 </para>
 <para>
  A <quote>command</quote> in this context can be any command recognized 
  by the shell. Typically, this is used to start a new interactive 
  shell (which in most cases would be <application>bash</application>).
  But actually any command may be run. When the command exits, so does 
  the shell, and consequently so does the <guibutton>Tab</guibutton> (unless
  it was running a split terminal, in which case the split is removed). So, if
  simple <quote>commands</quote> are to be run (i.e. not an interactive 
  shell), they should include some means to keep the shell from exiting, 
  or else the output of the command will be lost when the terminal closes
  abrubtly. Example:
 </para>
  <screen>
 tail  -f  /var/log/messages</screen>

 <para>
  <command>tail -f</command> does not exit immediately like just plain 
  <command>tail</command> does (without the <quote>-f</quote>).
  See the <command>tail</command> man page for exactly what this does, 
  and other options. 
 </para>

 <para>
  Alternately, the <link
  linkend="mgt-helper"><command>mgt-helper</command></link> utility that is
  bundled with &term; can be used to execute more complex and interesting
  shell commands (and other uses too). For instance, <quote>ps | less</quote>
  does not work as a simple Command since it is difficult for &term; to know
  how to interpret all shell type conventions (such as <quote>piping</quote>
  and metacharacters). But the above example can be run easily with a little
  help from the <command>mgt-helper</command> shell utility, when run as:
  <quote>mgt-helper -x ps | less</quote>, which essentially lets the shell
  handle all the parsing and subsequent execution of the results. Of course, 
  you could always do your own scripts for such things;
  <command>mgt-helper</command> just provides a convenient way of doing more 
  complex commands without having to write your own script.
  
 </para>


<literallayout>
<!-- space eater --> 
</literallayout>

<bridgehead renderas="sect3">The <emphasis>Edit Commands</emphasis> Window</bridgehead>
<informaltable frame=none label="" pgwide="1">
 <tgroup cols=1 align="center" colsep=1 rowsep=1>
  <colspec colname=c1 align="center">
   <tbody>
    <row>
     <entry align="center">
      <inlinegraphic  fileref="&figures;/mgt_editcmds160.jpg"></inlinegraphic>
    </entry>
   </row>
  </tbody>
 </tgroup>
</informaltable>


 <para>
  There are three categories of <quote>commands</quote>:
 </para>

 <para>
  <itemizedlist>
   <listitem>
    <para>
     <emphasis>Common to all Classes</emphasis>: These will always appear on
     the <guimenu>New Term</guimenu> menu.
    </para>
  </listitem> 

   <listitem>
    <para>
     <emphasis>Class Dependent</emphasis>: These will will not show on the
     <guimenu>New Term</guimenu> menu, and are used to define <quote>Start-up
     Tabs</quote>, and belong to a specific <quote>Class</quote> (see the
     <link linkend="classes"><citetitle>Terminal Classes</citetitle>
     Section.</link>). Different <quote>Classes</quote> can have their own
     unique start up <quote>Commands</quote> and <guibutton>Tabs</guibutton>.
    </para>
   </listitem> 

   <listitem>
    <para>
     <emphasis>Hardset Commands</emphasis>: These are the built-in 
     commands that appear at the top of the <guimenu>New Term</guimenu> menu
     by default, such as <guimenuitem>mc</guimenuitem> and
     <guimenuitem>shell</guimenuitem>.
    </para>
   </listitem> 
  
  </itemizedlist>
 </para> 

 <para>
  Each Command category can be configured in a corresponding
  <guibutton>Tab</guibutton> within the <guimenuitem>Edit Commands</guimenuitem>
  window.
 </para>

 
 <!--   ~~~~~       New section      ~~~~~     -->
 <sect2 id="creating-commands">
 <title>The <emphasis>New Term Menu (Common to all classes)</emphasis> Tab</title>

  <para>
   At the top of the Window are four input fields: <guilabel>Name</guilabel>,
   <guilabel>Path</guilabel>, <guilabel>Command</guilabel>, and <guilabel>Tab
   Class</guilabel>. The <quote>Name</quote> is what will appear as the menu
   selection on the <guimenu>New Term</guimenu> menu. <quote>Path</quote> is
   optional, and &term; will change to this directory when executing the
   <quote>command</quote>. <quote>Command</quote> is, of course, the command
   to execute. <quote>Tab Class</quote> is the Class that this Tab belongs 
   to (optional as well).
  </para>
  <para>
   After adding a new <quote>Command</quote> by filling in the appropriate 
   input fields, click the <guibutton>Add</guibutton> button just below the
   input fields, then the <guibutton>Apply</guibutton> button near the bottom
   of the Window. Your command will now appear in the list, and also now on
   the <guimenu>New Term</guimenu> menu. Commands created this way are always
   available from the <guimenu>New Term</guimenu> menu (see
   <quote>Startup Tabs</quote> below for <guibutton>Tabs</guibutton> that 
   are initialized only for specific Classes).
  </para>
  <para>
   To create multi-level sub-menus, use a <quote>/</quote> character for 
   each level. Example:
  </para>
  <screen>
   Projects/School/Science</screen>
  <para>
   This would put a <quote>Projects</quote> item on the <guimenu>New Term</guimenu>
   menu, which would open a sub-menu with <quote>School</quote> on it, which,
   in turn, would open a third level sub-menu with <quote>Science</quote> on
   it. Now clicking on <quote>Science</quote> would initiate a new
   terminal, and the <guibutton>Tab</guibutton> will be titled
   <quote>Science</quote> (unless running in a split terminal). This is useful
   for grouping commands that are often used in conjunction with each other.
   Or to reduce clutter on the <guimenu>New Term</guimenu> menu.
  </para>

  <note>
   <para>
    The first word entered in the <quote>Command</quote> input field, 
    is the command to be executed. Any other <quote>words</quote>, 
    or characters (separated by white space), will be passed to the
    <quote>command</quote> as arguments. So combining <quote>commands</quote>
    in one statement, will not work by itself (e.g. <literal>ls -l | less</literal>).
    Create a shell script to do this for you, then use the script name for the
    <quote>command</quote>. (See examples in the <link
    linkend="appendix">Appendix</link>.) Or use <command>mgt-helper</command> 
    to circumvent such problems. See the <link
    linkend="mgt-helper"><command>mgt-helper</command> Section</link> for all 
    various available options and features.
   </para>
  </note>
  <tip>
   <para>
    If you want to start a new interactive shell (command line session), then
    for the <quote>Command</quote> input field, you should use the command
    name to invoke your preferred shell, with appropriate command line
    options. For most of us, this is <command>bash</command>. Example
    <quote>command</quote> entry:
   </para>
  <screen>
  /bin/bash --login</screen>
  
  <para>
   This will open a new terminal, with a normal 
   <application>bash</application> <link linkend="login">login shell</link>
   running with our friendly Linux command line waiting for us. See the <link
   linkend="appendix">Appendix</link> for more advanced examples.

<!--
 netstat -t |grep -v "`hostname -s`.*\(`hostname -s`\|cadillac\)"
 watch \(tail -n20 /var/log/messages \|grep -v CROND\)
--> 
  </para>
  </tip>

  <tip>
   <para>
    You can reposition Command entries by dragging them with the mouse so that
    they are ordered how you want them to appear on the <guimenu>New
    Term</guimenu> menu. Newly added entries will appear at the bottom of the list
    (unless moved by dragging).
   </para>
  </tip>
  
  <tip>
   <para>
     Any <quote>Command</quote> you define here, can also be accessed 
     through <guimenuitem>Keybindings</guimenuitem> as well. 
     See the <link linkend="keybindings"><citetitle>Keybindings</citetitle>
     Section</link>.
   </para>
  </tip>
 
 </sect2>
<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
<sect2 id="startup-tabs">
<title>The <emphasis>Startup Tabs (Class dependent)</emphasis> Tab</title>
<para>
 Defining a <emphasis>Class Dependent</emphasis> command is much the same 
 as above. The main difference is that these never appear on the 
 <guimenu>New Term</guimenu> menu, and can be automatically initiated on 
 program start-up.
</para>
<para>
 <emphasis>Class Dependent</emphasis> <guibutton>Tabs</guibutton> can also 
 be associated with different <guimenuitem>Win Classes</guimenuitem>, so that
 conceivably there can be many <guimenuitem>Win Classes</guimenuitem>, each 
 with a unique start-up configuration. See the <guibutton>Window Class</guibutton>
 listbox in the lower righthand corner for selecting
 <guimenuitem>Win Classes</guimenuitem> (these must already exist).
</para>
<para>
  Any commands in this Tab's list, will be executed on program start-up with
  the appropriate <guimenuitem>Win Class</guimenuitem> (or the
  <literal>Default</literal> Class if no Class is specified), thus creating
  the desired <guibutton>Tabs</guibutton> automatically, as long as the
  <guibutton>Don't open startup tabs</guibutton> checkbox at the very bottom
  of the Window is <emphasis>not</emphasis> checked.
 </para>
 <para>
  You can either create new start-up <quote>commands</quote> through the same
  steps as outlined above (<guibutton>Add</guibutton> button, etc), or you can
  copy <quote>commands</quote> from the <guibutton>New Term Menu</guibutton>
  <guibutton>Tab</guibutton> with the <guibutton>Get</guibutton> button. Just
  highlight the <quote>command</quote> you want to copy with the mouse first,
  switch Tabs, then click on <guibutton>Get</guibutton>, and then
  <guibutton>Apply</guibutton>, of course.
 </para>
 <para>
  In addition to specifying a <guimenuitem>Win Class</guimenuitem> that
  applies to the entire Window, you can also specify
  <guimenuitem>Tab Classes</guimenuitem> using the input field in the top
  righthand corner. Remember, a <guimenuitem>Tab Class</guimenuitem> only 
  applies to that one <guibutton>Tab</guibutton>.
 </para>
 
 <tip>
  <para>
   Start-up Commands do not appear on the <guimenu>New
   Term</guimenu> menu, but you can use the <guibutton>Get</guibutton> feature
   to have the same Command in both locations.
  </para>
 </tip>

</sect2>
<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->

 <sect2 id="edit-commands-newterm">  
  <title>The <emphasis>New Term</emphasis> Tab (<emphasis>NEW v1.5.2</emphasis>)</title>
    <para>
      This <guibutton>Tab</guibutton> contains configuration options for 
      controlling which of the built-in, <quote>hardset</quote> entries appear
      on the <guimenu>New Term</guimenu> menu. These are the default
      selections that normally appear at the top of the menu (e.g.
      <guimenuitem>Shell</guimenuitem> and <guimenuitem>mc</guimenuitem>). 
    </para>

    <para>
     These can be individually disabled/enabled. There are six possible 
     entries:
    </para>
    
    <variablelist> 
    
     <varlistentry>
      <term><guibutton>&nbsp;&nbsp;Shell</guibutton></term>
      <listitem>
       <para>
          A normal, user, interactive <application>bash</application> shell is started.
       </para>
     </listitem> 
    </varlistentry>

    <varlistentry>
     <term><guibutton>&nbsp;&nbsp;Root</guibutton></term>
      <listitem>
       <para>
          A root shell is launced with <command>su -</command>.
       </para>
     </listitem> 
    </varlistentry>
    
    <varlistentry>
      <term><guibutton>&nbsp;&nbsp;mc</guibutton></term>
      <listitem>
       <para>
          The <application>Midnight Commander</application>, a text based 
          file manager, is started.
       </para>
     </listitem> 
    </varlistentry>
    
    <varlistentry>
      <term><guibutton>&nbsp;&nbsp;Split</guibutton></term>
      <listitem>
       <para>
          The terminal is split with the new terminal being 
          moved from another <guibutton>Tab</guibutton> or Window.
       </para>
     </listitem> 
    </varlistentry>
    
    <varlistentry>
      <term><guibutton>&nbsp;&nbsp;View</guibutton></term>
      <listitem>
       <para>
          A terminal is opened in <quote>view</quote> mode, to view 
          the activity in another terminal from another
          <guibutton>Tab</guibutton>, or another Window.
       </para>
     </listitem> 
    </varlistentry>
    
    <varlistentry>
      <term><guibutton>&nbsp;&nbsp;New Tab with...</guibutton></term>
      <listitem>
       <para>
          A new <guibutton>Tab</guibutton> is created by moving an 
          existing split <guibutton>Tab</guibutton> from the current 
          Window, or another terminal from another Window.
       </para>
     </listitem> 
    </varlistentry>
   
   </variablelist> 
   
   <para>
    These are all explained in more detail in the 
    <link linkend="menu-newterm"><citetitle>Menu - New Term</citetitle> 
    Section</link>. Please refer to that.
   </para>

   <para>
    You can also choose to disable all default selections with the 
    <guibutton>hide all hardset items</guibutton> button.
   </para>

   </sect2>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
<sect2 id="edit-edit-commands">
<title>Editing and Deleting Commands</title>
 <para>
  To make any changes to an existing &term; Command, click on 
  the Command with the mouse, and then click the 
  appropriate button: <guibutton>Edit</guibutton> to modify this 
  <quote>Command</quote>, or <guibutton>Remove</guibutton> to delete 
  this <quote>Command</quote>. If editing, then once you've changed the
  input fields at the top, click the <guibutton>Update</guibutton> button. For
  both situations, click <guibutton>Apply</guibutton> to have your changes
  take effect. Or as our fearless leader calls it, the <quote><emphasis>make
  it so</emphasis></quote> button ;-)
 </para>

</sect2>

</sect1>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
<sect1 id="keybindings">
<title>Keybindings</title>
 <para>
  This is where keyboard shortcuts for &term; functions and key 
  definitions for various other purposes may be customized. It is accessed
  from the <guimenu>Settings</guimenu> menu. This selection will open a Window
  that displays the current settings. These may be customized to suit
  individual preferences by using the input fields at the top of the Window.
 </para>

<literallayout>
<!-- space eater -->
</literallayout>

<bridgehead renderas="sect3">The Keybindings Window</bridgehead>
<informaltable frame=none label="" pgwide="1">
 <tgroup cols=1 align="center" colsep=1 rowsep=1>
  <colspec colname=c1 align="center">
   <tbody>
    <row>
     <entry align="center">
      <inlinegraphic  fileref="&figures;/mgt_pix_keyb151.jpg"></inlinegraphic>
    </entry>
   </row>
  </tbody>
 </tgroup>
</informaltable>

<!--   ~~~~~       New section      ~~~~~     -->
<sect2>
<title>Actions</title>
 <para>
  At the top of the Window, there is a list of &term; 
  <guilabel>Actions</guilabel>, with an initial entry of <guibutton>Shell-&gt;New
  Tab</guibutton>. Click here to see all available built-in
  <quote>Actions</quote> that can be customized. The input field to the right is
  labeled <quote><guilabel>String</guilabel></quote> and the last input
  field is labeled <quote><guilabel>Keybinding</guilabel></quote>. The
  <guilabel>Keybinding</guilabel> field is where you enter your keyboard
  combination for a particular <quote>Action</quote> or usage.
 </para>

 <para> 
  To define a new shortcut, first select an item from the
  <guilabel>Action</guilabel> drop-down list with the mouse, then click on the
  <guilabel>Keybinding</guilabel> field, and then press the keyboard
  combination you want to use. Do NOT type the keystroke representations.
  Example: if you want <keycap>SHIFT-F1</keycap>, then press
  <keycap>SHIFT-F1</keycap>, and do not try to spell it. There is no limit on
  the number of keys that can be used for the key binding definition. This is
  your choice. The <guilabel>String</guilabel> field is not required for
  simple <quote>Actions</quote> such as these. </para>
 <para>
  Example, shortcut to remove the current <guibutton>Tab</guibutton>:
 </para>
 <para> 
  Open the <guilabel>Action</guilabel> list at the top by clicking the button
  just to the right. Scroll down the list, and find <guimenuitem>Remove
  Term</guimenuitem>. Click on this, which  closes the list. Now go all the
  way over to the <guilabel>Keybinding</guilabel> field, and click on the
  blank field to activate it. Now press whatever key combination you prefer.
  For example, press: <keycap>CTRL-SHIFT-DELETE</keycap>. This will be the
  new shortcut!
 </para>
 <para>
  After setting the <quote><guilabel>Action</guilabel></quote> and the 
  <quote><guilabel>Keybinding</guilabel></quote>, click on 
  <guibutton>Add</guibutton>, and then, of course, at the bottom of the
  Window, <guibutton>Apply</guibutton> to make your new addition permanent.
  Now try it!
 </para>
</sect2>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
<sect2>
<title>Strings</title>
 <para>
  The <guilabel>String</guilabel> input field gives even more flexibility for
  defining custom <quote><guilabel>Actions</guilabel></quote>. It can be used
  with the special <quote><guimenuitem>Escape Sequence</guimenuitem></quote>,
  <quote><guimenuitem>Command -&gt;New
  Tab</guimenuitem></quote>, and 
  <quote><guimenuitem>Switch To</guimenuitem></quote>
  <quote>Actions</quote> (available from the drop-down list on the far 
  left).
 </para>

 <para>
  Use <guilabel>Escape Sequences</guilabel> to associate any string with a
  keystroke combination. This is helpful for forcing problem keys to do what
  you want, or to perform some custom function that you do repetitively.
 </para>
 <para>
  As one example, select <guilabel>Escape Sequence</guilabel> from the list,
  and enter the following text to the <guilabel>String</guilabel> field:
  </para>
 <para> 
 <replaceable>&nbsp;&nbsp;echo hello world\n</replaceable>
 </para>
 <para>
  And then, click the <guilabel>Keybinding</guilabel> field, and press 
 <keycap>F7</keycap>, then click the <guibutton>Add</guibutton>, and then 
 <guibutton>Apply</guibutton>. Now press <keycap>F7</keycap> to see the 
 results. You should see:
 </para>
 <screen>
 [bash]$ echo hello world
 hello world</screen>
 <para>
  A more useful example: Select <guilabel>Escape Sequence</guilabel> from 
  the <guilabel>Action</guilabel> list and then enter:
 </para>
 <para> 
  <replaceable>&nbsp;&nbsp;multi-gnome-terminal --add-tab --tpath=`pwd`\n</replaceable>
 </para>
 <para>
  into the <guilabel>String</guilabel> field. Then whatever key combination you
  like for <guilabel>Keybinding</guilabel> (e.g. <keycap>F9</keycap>), then
  click <guibutton>Add</guibutton>, and lastly <guibutton>Apply</guibutton>.
  Now try it ;-) This should open a new <guibutton>Tab</guibutton> in the 
  same Window and also land you in the same directory as your current
  directory.
 </para>
 <para>
  You can also use any of &term;'s raw escape sequences instead of the 
  command syntax as above. The basic ones are:
 </para>
 
 <screen>
 echo -e "\033]NT;&lt;tab_name&gt;\011&lt;path&gt;\011&lt;command&gt;\007"
 echo -e "\033]HS;&lt;term_name&gt;\011&lt;path&gt;\011&lt;command&gt;\007"
 echo -e "\033]VS;&lt;term_name&gt;\011&lt;path&gt;\011&lt;command&gt;\007"
 echo -e "\033]NW;&lt;term_name&gt;\011&lt;path&gt;\011&lt;command&gt;\007"
 echo -e "\033]WT;&lt;term_name&gt;\011&lt;path&gt;\011&lt;command&gt;\007"</screen>

 <para>
  In this order, these create: a <quote>New Tab</quote>, a 
  <quote>Horizontal Split</quote>, <quote>Vertical
  Split</quote>, a <quote>New Window</quote>, and lastly 
  a <quote>New Window</quote> with startup <guibutton>Tabs</guibutton>.
 </para>
 <para>
  An interesting example:
 </para>
 <screen>
  echo -e "\033]HS;$(hostname -s)\011 \011ssh $(hostname)\007"</screen>
 
 <para>
  This assumes you have an existing <command>ssh</command> connection to
  another host, and will open a second <command>ssh</command> connection to
  that same host in a split <guibutton>Tab</guibutton>.
 </para>
 <para>
  Also, any custom <quote>Commands</quote> that have been created through <link
  linkend="edit-commands"><guimenuitem>Edit Commands</guimenuitem></link>, are
  automatically available for use as a <guimenuitem>Keybinding</guimenuitem>.
  To access these, open the <guilabel>Actions</guilabel> list in upper left
  hand corner, and select <guimenuitem>Command-&gt;New Tab</guimenuitem> (or
  any of the <guibutton>Command-&gt; *</guibutton> functions), and then click
  the button to open the list next to the <guilabel>String</guilabel> input
  field. This list now will contain all of your custom defined
  <quote>Commands</quote>. Now select one, and chose your shortcut key of
  choice, and then save as usual.
 </para>

 <para>
  The <quote><guimenuitem>Switch To</guimenuitem></quote>
  <guilabel>Action</guilabel> can be used to define shortcuts 
  for switching to specific <guibutton>Tabs</guibutton>. In the 
  <guilabel>String</guilabel> field enter the ordinal number of 
  the <guibutton>Tab</guibutton> to switch to, and then enter 
  a shortcut key in the <guilabel>Keybinding</guilabel> field. 
  So <guilabel>String</guilabel> would be <quote>1</quote> to 
  switch the first (furthest to the left) <guibutton>Tab</guibutton>. 
 </para>
 
 <para>
  The <guilabel>String</guilabel> field will also recognize common 
  meta-characters such as <literal>\n</literal> (as above) for newline, 
  and also <literal>\r</literal>, <literal>\t</literal>, etc. 
  <literal>\033</literal> is used to represent the <quote>escape</quote>
  character. For instance, my keyboard generates <literal>^[[1^</literal>
  for <keycap>CTRL-Home</keycap>. This would be represented in the 
  <guilabel>String</guilabel> field as <literal>\033[1^</literal>.
 </para>
 <para>
  And, the <guilabel>String</guilabel> field will also recognize any octal
  ascii representation. Example: <literal>\141</literal> octal equals the
  letter <quote>a</quote>. This may be useful for non-printable characters.
  See <command>man ascii</command> for a complete listing of values.
 </para>
</sect2>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
<sect2>
<title>Modifying Keybindings</title>
 <para>
  Editing and removing key bindings, is similar, but first highlight the one to
  be changed from the main listbox, by clicking on it. Then either click 
  <guibutton>Update</guibutton> to modify, or <guibutton>Remove</guibutton> to
  delete it. And again, click <guibutton>Apply</guibutton> at the bottom of
  the Window.
 </para>
 <para>
  You can also easily re-set the default key bindings here. And also specify 
  a different modifier key for the control <link
  linkend="menu-popup"><guimenu>Pop-up</guimenu></link> menu (default is
  <keycap>CTRL-RightMouse</keycap>, though often just
  <keycap>RightMouse</keycap> works).
 </para>
</sect2>

</sect1>

<!--  ~  End section  ~  -->



<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->

  <sect1 id="pointerusage">
    <title>Mouse usage</title>
    <para>
     The mouse can be used to select (copy), and extend-select text, paste
     text from other terminals or applications, and also bring up control
     menus, as well as select (and move) other GUI components.
    </para>
    <para>
     Note that some text applications may take complete control of 
     the mouse. &term;'s mouse handling features are not available 
     in such cases. This is true of <application>vim</application>,
     <application>w3m</application>, etc. which will provide their 
     own mouse handling.
    </para>

<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="pointer-select">
	<title>Selection</title>
      <para>
       The following assumes a standard three-button mouse that has not been
       made left-handed via the control center. Left-handed mice will of
       course work, but with the right button instead of the left one, and so
       on.
     </para>
	<para>
       The <keycap>LeftMouse</keycap> button can be used to initiate a
       selection. If the mouse button is held down and dragged, then
       characters, words and lines are selected individually.  	
     </para>
     <tip>
      <para>
       If you drag past the boundaries of the Window, the screen and selection
       will scroll to keep up. So, for instance, you can select into the
       non-visible part of the scrollback buffer, by dragging the mouse past
       the upper Window border and scrolling as the selection is extended.
      </para>
     </tip>
 	<para>
	  If the <keycap>LeftMouse</keycap> button is double-clicked, then the
	  selection will be by word-characters.  Hold the mouse button
	  down on the second click to drag the mouse and enlarge the
	  selection.  The word-characters are defined in the
	  <guilabel>General options</guilabel> tab of <link
	  linkend="preferences-general-tab">Preferences dialog-box</link>.
	</para>
	<para>
	  Finally, if the <keycap>LeftMouse</keycap> button is triple-clicked and
	  held, whole lines are selected as you drag the mouse up and
	  down.
	</para>
	<para>
	  The <keycap>RightMouse</keycap> button can be used to extend the
	  selection.  Simply scroll to where you wish to extend the
	  selection to, and click the <keycap>RightMouse</keycap> button in the
	  desired place.   Again, single, double and 
       triple clicks will result in by-character, by-word, or 
       by-line selection.
	</para>
	<para>
	  For all cases, releasing the mouse button automatically
	  copies the selected text into the clipboard, so that it may
	  be pasted to other applications.  Note that any screen
	  output will clear the highlighting of the selection, but it
	  will still be kept on the X clipboard.
	</para>
     <para>
      If there is no URL match on screen beneath the pointer (see below),
      <keycap>CTRL-MiddleMouse</keycap> will reset the X selection mode.
     </para>
     <tip>
      <para>
       In applications that take control of the mouse, and don't have 
       their own selection capability (e.g. <application>w3m</application>),
       the application can be bypassed with <keycap>SHIFT-LeftMouse</keycap>.
       This does not give access to all &term; mouse features, however.
      </para>
     </tip>
    </sect2>
<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="pointer-paste">
	<title>Pasting text</title>
	<para>
	  If the middle mouse button is pressed, then the current
	  selection is pasted into the Window.  This can be used to
	  transfer text from other applications, as well as from
       other locations within the same terminal Window.
	</para>
	<para>
	  If you only have a two-button mouse, then your X server
	  probably has a method of emulating the middle mouse
	  button. The most common method is to emulate the middle
	  mouse button by simultaneous pressing of left and right
	  mouse buttons.  Refer to your X server documentation for
	  further information.
	</para>
     <para>
      <keycap>SHIFT-INSERT</keycap> can be used as a keyboard shortcut 
      for pasting.
     </para>
    </sect2>
<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="pointer-wheel">
	<title>Wheel mouse</title>
	<para>
	  If you have a wheel mouse (which sends mouse button 4 and
	  mouse button 5 events), then you can use the wheel to scroll
	  up and down through the scrollback buffer. If properly 
       configured for X, no additional configuration should be required.
	</para>
    </sect2>
<!--  ~  End section  ~  -->

<!--   ~~~~~       New section      ~~~~~     -->
    <sect2 id="pointer-menu">
	<title>Pop-up Control Menu</title>
	<para>
	  The mouse pointer can also be used to bring up the <link
	  linkend="menu-popup"><guimenu>Pop-up</guimenu></link>  
       menus, which can be used to open new &term; Windows, open 
       new <guibutton>Tabs</guibutton> and to access many 
       other &term; features. There are two such menus: the 
       <guimenu>New Term</guimenu> menu which is accessed with 
       <keycap>CTRL-LeftMouse</keycap> 
       (see the <link linkend="menu-newterm"><citetitle>New Term</citetitle> Section.</link>). And
       the control <guimenu>Pop-up</guimenu> menu, accessed with
       <keycap>CTRL-RightMouse</keycap> (see the <link
       linkend="menu-popup"><citetitle>Pop-up Menu</citetitle> Section</link>
       for more details). 
      </para>
    </sect2>
<!--  ~  End section  ~  -->

<!--   ~~~~~       New section      ~~~~~     -->
   <sect2 id="url-highlight">
    <title>Launching URL's</title>
     <para>
      &oldterm; instituted the concept of <quote>live URLs</quote>. These 
      are URLs of various types that appear on the terminal window as text 
      and that the application is able to discern just what they are, e.g. a
      HTTP style URL to denote a WWW document. This added quite a bit of
      additional functionality to the plain old terminal interface. Now, actions
      could be taken based on whatever appears as raw text in the window.
      </para>
     <para>
       &term;, like &oldterm;, can be used to select
       URL's (Uniform Resource Locators; such as
       <literal>http://www.gnome.org</literal>, or
       <literal>file:///usr/share/doc/mgt/index.html</literal>, or
       <literal>cristiano@example.com</literal>) from the text displayed in
       the terminal Window, simply by moving the mouse over
       the URL text.  The URL will be emphasized, by being redrawn with an
       underscore, and the mouse pointer will change to a pointing hand to 
       let you know it is <quote>live</quote>.
     </para> 
     <para>
      &term; also now understands email addresses and file path names, in
      addition to traditional <literal>http://</literal> type URLs. Invoking
      the <link linkend="menu-popup">control-menu</link> while over a
      highlighted URL will add a new option to load that URL into an
      appropriate application, for instance a mail client if the URL
      represents an email address.  The menu selection text will reflect what
      the appropriate client should be.
	</para>
	<para>
      <keycap>CTRL-MiddleMouse</keycap> is a shortcut to launching the URL with
      the appropriate application immediately.
     </para>
     <para>
      &term; includes a script, <command>mgt-helper</command> which can extend
      this feature so that text based applications can be launched in their
      own <guibutton>Tabs</guibutton> or Windows. See the <link
      linkend="mgt-helper"><command>mgt-helper</command> Section</link> for
      more information on what this script can do in conjunction with &term;
      to greatly extend and customize URL handling.
     </para>
    </sect2>
<!--  ~  End section  ~  -->

<!--   ~~~~~       New section      ~~~~~     -->
   <sect2 id="pointer-dnd">
    <title>Drag and Drop</title>
	<para>
	  Drag and drop can be used for a number of operations within
	  the terminal.
	</para>
	<variablelist>
	  <varlistentry>
	    <term>&nbsp;Dragging Files and URLs</term>
	    <listitem>
	      <para>
            If files are dragged into the terminal, then their full filename
            is pasted into the Window.  URL's can also be dropped in this
            manner.
	      </para>
	    </listitem>
	  </varlistentry>
	  
       <varlistentry>
        <term>&nbsp;Dragging Colors</term>
	    <listitem>
          <para>
           A color can be dragged from another gnome application, or from the
           <link linkend="menu-settings">color selector</link> into the
           display.  If it lands on a character, it sets the foreground color,
           otherwise it sets the background color.  Refer to the
           <guibutton>Tab</guibutton> <link
           linkend="preferences-color-tab">Colors configuration</link>
           section. 
          </para>
	    </listitem>
	  </varlistentry>
	</variablelist>
   
   </sect2>
  </sect1>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->

  <sect1 id="options">
    <title>Command line options</title>
    <para>
      The following options can be used to start &term;. These will 
      over-ride any saved configuration settings.
    </para>
    
    <para>
     <itemizedlist>
      
      <listitem>
	  <para>
        <option>--version</option>
	  </para>
	  <para>
	   Show the current &term; version information, then exit.
       </para>
	</listitem>
	  
      <listitem>
	  <para>
        <option>--usage</option>
	  </para>
	  <para>
        Show all command line options, including various GNOME and
        GDK options, then exit.
       </para>
	</listitem>
     
      <listitem>
	  <para>
        <option>--help</option>
	  </para>
	  <para>
        Show command line options, including a brief description 
        of each, then exit.
       </para>
	</listitem>
     
     <listitem>
	  <para>
        <option>--background <replaceable>COLOR</replaceable></option>
	  </para>
	  <para>
         Used to specify the background color for the terminal at startup.
         The <replaceable>COLOR</replaceable> can be any form accepted by your
         windowing system.
	  </para>
	</listitem>
	  
	<listitem>
	  <para>
        <option>--class <replaceable>WM_CLASS</replaceable></option>
       </para>
	  <para>
	   Specify a Window class name for X (this is different than 
        <option>--tclass</option> and <option>--wclass</option>, which are
        purely &term; functions).
       </para>
	</listitem>
	
	<listitem>
	  <para>
        <option>--display <replaceable>DISPLAY</replaceable></option>
       </para>
	  <para>
	   Specify the X <quote>display</quote> to be used.
       </para>
	</listitem>
     
     <listitem>
	  <para>
        <option>--command <replaceable>CMD ARGS</replaceable>,
	      -e <replaceable>CMD ARGS</replaceable></option>
       </para>
	  <para>
	    Executes the command <replaceable>CMD</replaceable> with
	    its arguments <replaceable>ARGS</replaceable> on startup.
	    No arguments beyond this one will be processed by the
	    terminal.  This behavior mimics the <command>xterm
	    -e</command> behavior.
	  </para>
	 </listitem>

	<listitem>
	 <para>
        <option>--execute <replaceable>CMD ARGS</replaceable></option>
      </para>
      <para>
        Same as <option>--command</option> above, included for compatibility.
      </para>
	</listitem>
	  
	<listitem>
	  <para>
        <option>--font <replaceable>FONT</replaceable></option>
       </para>
	  <para>
         Sets the font of the terminal to <replaceable>FONT</replaceable> 
	  </para>
	</listitem>
	  
	<listitem>
	  <para>
        <option>--foreground <replaceable>COLOR</replaceable></option>
       </para>
	  <para>
        Sets the foreground of the terminal to
        <replaceable>COLOR</replaceable>.
	  </para>
	</listitem>
	  
	<listitem>
	  <para>
        <option>--geometry <replaceable>GEOMETRY</replaceable></option>
       </para>
	  <para>
	    Specifies the startup geometry for this terminal.  The
	    geometry specifies the desired width and height in
	    terminal characters.  For example:
	    <option>--geometry=80x40</option> will create an
	    eighty-column by forty-line terminal. You can also specify
	    the location of the terminal Window on the screen; for
	    example, <option>--geometry=80x40+100+200</option> will
	    create a Window whose top left corner is 100 pixels to the
	    right and 200 pixels down from the top left corner of the
	    screen, while <option>--geometry=80x40+100-200</option>
	    will give a Window whose bottom left corner is 100 pixels to the
	    right and 200 pixels up from the bottom left corner of the
	    screen.   
        </para>
	
     </listitem>
	  
	<listitem>
	  <para>
        <option>--login</option>
       </para>
	  <para>
         Make &term; launch the built-in shell (from the <guimenu>New
         Term</guimenu> menu) in login mode (it will run all of your login
         initialization scripts in this mode). 
	  </para>
	 </listitem>
	  
	<listitem>
	  <para>
        <option>--nologin</option>
	  </para>
	  <para>
	    Make &term; only launch a shell, without running any
	    login initialization scripts. This is the default, unless
	    you have selected <guilabel>Use --login by
	    default</guilabel> in the <link
	    linkend="preferences-general-tab">Preferences</link> dialog. 
	  </para>
      </listitem>
	  
       <listitem>
	    <para>
          <option>--noutmp</option>
         </para>
	    <para>
           Indicates that this and the associated shell should
           <emphasis>not</emphasis> be registered in the system database of
           users logged into the computer. 
	    </para>
	  </listitem>
	  
	  <listitem>
	    <para>
          <option>--utmp</option>
         </para>
	    <para>
	      Indicates that the user wants this terminal to be
	      registered in the system database of users logged into
	      the computer (the utmp database). This is the default.
	    </para>
	  </listitem>

	  <listitem>
	    <para>
          <option>--lastlog</option>
         </para>
	    <para>
           Always create a <filename>lastlog</filename> entry for each
           terminal login. 
         </para>
	  </listitem>
	  
	  <listitem>
	    <para>
          <option>--nolastlog</option>
         </para>
	    <para>
           Do not create a <filename>lastlog</filename> entry for each
           terminal login. 
         </para>
	  </listitem>

<!-- FIXME, what's the difference lastlog vs wtmp. Anybody know? -->	  	  

	  <listitem>
	    <para>
          <option>--wtmp</option>
         </para>
	    <para>
          Requests that this session will be logged into the system  records
          for  users  that have logged into the system.  This is different
          from `utmp' because this  keeps  track of who logged in and logged
          out of the system, independently of whether  it  shows up in the
          list of users.
         </para>
	  </listitem>
	  
	  <listitem>
	    <para>
          <option>--nowtmp</option>
         </para>
	    <para>
          Requests  that  the session be not logged into the system records.
         </para>
	  </listitem>

	  <listitem>
	    <para>
          <option>--title <replaceable>TITLE</replaceable>,
           -t <replaceable>TITLE</replaceable></option>
         </para>
	    <para>
	      Makes &term; use <replaceable>TITLE</replaceable> for the
	      Window title.
	    </para>
	  </listitem>

	  <listitem>
	    <para>
          <option>--termname <replaceable>TERMNAME</replaceable></option>
         </para>
	    <para>
	      Makes &term; use
	      <replaceable>TERMNAME</replaceable> as the value of the
	      <envar>TERM</envar> environment variable. This is 
           generally not needed, but is available for those who 
           find they do need to change it.
	    </para>
	  </listitem>

	  <listitem>
	    <para>
          <option>--start-factory-server</option>
         </para>
	    <para>
	      Try to start the TerminalFactory service for this
	      terminal (see below). 
	    </para>
	  </listitem>

	  <listitem>
	    <para>
          <option>--use-factory</option>
         </para>
	    <para>
           If there is already a terminal process started with
	      <option>--start-factory-server</option> option, then
	      running the command <command>multi-gnome-terminal
	      --use-factory</command> will create a new terminal
	      Window owned by the existing terminal process. In other
           words, it will have the same effect as choosing <link
           linkend="menu-file"> <menuchoice><guimenu>File</guimenu>
           <guimenuitem>New Window</guimenuitem></menuchoice></link> in the
           existing terminal. 
	    </para>
         <para> 
          If there is no TerminalFactory running, then this option has no
          effect. 
	    </para>
	  </listitem>
	  
       <listitem>
	    <para>
          <option>--solid</option>
         </para>
	    <para>
          Force a solid background color, i.e. turn off transparency 
          or pixmap backgrounds.
         </para>
	  </listitem>
       
       <listitem>
	    <para>
          <option>--pixmap <replaceable>FILENAME</replaceable></option>
         </para>
	    <para>
          Specifies  the image filename to be used as the background for
          this terminal Window.
         </para>
	  </listitem>
       
       <listitem>
	    <para>
          <option>--shaded</option>
         </para>
	    <para>
          Requests that the background be shaded (for use with
          <option>--transparent</option> and <option>--pixmap</option>).
         </para>
	  </listitem>

       <listitem>
	    <para>
          <option>--noshaded</option>
         </para>
	    <para>
          Requests that the background remain untouched (no shading 
          is applied).
         </para>
	  </listitem>

       <listitem>
	    <para>
          <option>--transparent</option>
         </para>
	    <para>
          Requests that the terminal should run in
          <quote>pseudo-transparent</quote> mode, making the  background  of
          the terminal Window be the same as the background of your root
          Window. It is not truly transparent since other Windows will 
          not be visible through the terminal Window.
         </para>
	  </listitem>

       <listitem>
	    <para>
          <option>--icon <replaceable>FILENAME</replaceable></option>
         </para>
	    <para>
          Specifies the filename that contains the icon image that should be
          used for &term; when iconified (as long as your Window Manager
          supports icon hints).
         </para>
	  </listitem>
       
	<listitem>
	  <para>
        <option>-s</option>, <option>--tclass</option> <replaceable>CLASSNAME</replaceable> (<emphasis>NEW Behavior v1.6.0</emphasis>)
       </para>
	  <para>
	    Specifies the Class for this <guibutton>Tab</guibutton> only.
         This effects all terminals within the <guibutton>Tab</guibutton> as
         well, but other <guibutton>Tabs</guibutton> may have belong to other
         Classes.
	  </para>
	</listitem>
	
	<listitem>
	  <para>
        <option>-S</option>, <option>--wclass</option> <replaceable>CLASSNAME</replaceable> (<emphasis>NEW v1.6.0</emphasis>)
       </para>
	  <para>
         Specifies the Class shared by all <guibutton>Tabs</guibutton> of this
         Window. This is essentially the old behavior of
         <option>--tclass</option>.
	  </para>
	</listitem>
	
       <listitem>
	    <para>
          <option>-w</option>, <option>--add-window</option>
         </para>
	    <para>
          Launch a new Window from the parent Window, as a sub-process.
          This will automatically open one <guibutton>Tab</guibutton>.
          This can be combined with various other options listed below.
         </para>
	  </listitem>

       <listitem>
	    <para>
          <option>-W</option>, <option>--add-window-wt</option> (<emphasis>NEW v1.5.2</emphasis>)
         </para>
	    <para>
          Launch a new Window from the parent Window just as the above 
          <option>--add-window</option>, but also open any start-up or saved 
          <guibutton>Tabs</guibutton> for the current Class as well.
         </para>
	  </listitem>
       
       <listitem>
	    <para>
          <option>-A</option>, <option>--newapp</option>
         </para>
	    <para>
          Use this option to force a completely new instance of &term; so that
          the options listed below (e.g. <option>--add-tab</option>) can be
          utilized in a new Window as opposed to the current one.
         </para>
	  </listitem>
       
       <listitem>
	    <para>
          <option>-T</option>, <option>--add-tab</option>
         </para>
    	    <para>
          Add a new <guibutton>Tab</guibutton>. <option>--add-tab</option> can
          be used to add a <guibutton>Tab</guibutton> to a new Window that is
          being created (see <option>--add-window</option> and
          <option>--newapp</option>), and also to dynamically add a new
          <guibutton>Tab</guibutton> to the Window that invokes the command.
          Example:
         </para>
         <screen>
  multi-gnome-terminal --add-tab       </screen>
         <para>
          Something fun to use with Keybindings. See example below for 
          combining various command line options.
         </para>
	  </listitem>
       
       <listitem>
	    <para>
          <option>-n</option>, <option>--tname <replaceable>NAME</replaceable></option>
         </para>
	    <para>
          Use this <replaceable>NAME</replaceable> for the new 
          <guibutton>Tab</guibutton> label and shell being launched.
          If white space is included, use quotes.
         </para>
	  </listitem>
       <listitem>
	    <para>
          <option>-h</option>, <option>--hsplit</option>
         </para>
	    <para>
          Split the <guibutton>Tab</guibutton> or Window
          being created horizontally in equal parts. 
         </para>
	  </listitem>
       <listitem>
	    <para>
          <option>-v</option>, <option>--vsplit</option>
         </para>
	    <para>
          Split the  <guibutton>Tab</guibutton> or Window
          being created vertically in equal parts. 
         </para>
	  </listitem>
       <listitem>
	    <para>
          <option>-p</option>, <option>--tpath <replaceable>PATH</replaceable></option>
         </para>
	    <para>
          Change to this <replaceable>PATH</replaceable> when starting the 
          new <guibutton>Tab</guibutton>.
         </para>
	  </listitem>
       
       <listitem>
	    <para>
          <option>-c</option>, <option>--tcommand <replaceable>COMMAND</replaceable></option>
         </para>
	    <para>
          Use this <replaceable>COMMAND</replaceable> to launch the  new
          shell. This can be used in conjunction with
          <option>--add-tab</option> to create a new
          <guibutton>Tab</guibutton> or with <option>--add-window</option>. 
          Successive <option>--tcommand</option>'s can also be invoked so as
          to pass arguments to the first <option>--tcommand</option>. 
          Or if white space is included, the command must be in quotes. 
          The first word should be the command in this case, and any 
          additional words, or characters separated by white space, 
          would be arguments to the command.  Example:
         </para>
         <screen>
  multi-gnome-terminal --add-tab --tname="MGT Man Page" \
   --tcommand="man multi-gnome-terminal"  </screen>
         <para>
          This creates a new <guibutton>Tab</guibutton> with the
          &term; man page opened. Obviously, something more suited for a key
          binding shortcut. Remember, once the command exits, so does the
          <guibutton>Tab</guibutton>.
         </para>
	  </listitem>
       
       <listitem>
	    <para>
          <option>-x <replaceable>COMMAND</replaceable></option>
         </para>
	    <para>
          As above, use this <replaceable>COMMAND</replaceable> to launch the  new
          shell, but quoting is not required with this option.
         </para>
	  </listitem>

       <listitem>
	    <para>
          <option>-N</option>, <option>--tnext</option>
         </para>
	    <para>
          When creating split terminals, force the split to the next 
          terminal being created. This is to aid in the positioning of 
          terminals within the Window.
         </para>
	  </listitem>
       
       <listitem>
	    <para>
          <option>-P</option>, <option>--tprev</option>
         </para>
	    <para>
          When creating split terminals, force the split to the previous
          terminal being created.
         </para>
	  </listitem>

       <listitem>
	    <para>
          <option>--nowait</option>
         </para>
	    <para>
          Normally, &term; waits to make sure a new terminal has in fact 
          been created before proceeding. This option bypasses this 
          safety net, and thus is dangerous for general usage. It should 
          not be used -- unless you have a very good reason, and know 
          what you are doing. In most cases, it simply is not warranted.
         </para>
	  </listitem>

     </itemizedlist>		
    </para>
  
   <tip>
    <para>
     You can use more than one option at once. Example: 
    </para>
    <screen>
  multi-gnome-terminal --transparent \
    --font -b&#38;wh-lucidatypewriter-medium-r-normal-*-14-*-*-*-m-*-iso8859-1 \
    --add-window --tname="My Window" --tcommand=vi \
    --tpath=$HOME/multignometerm --tclass=Default --add-tab \
    --tname=MGT1 --hsplit --tname=MGT2 --vsplit --tname=MGT3 \
    --tcommand=mc &#38; </screen>
    <para>
     This opens a new transparent Window and one <guibutton>Tab</guibutton>
     with <command>vi</command> running, and then adds another
     <guibutton>Tab</guibutton> (MGT1) which is split horizontally first, and
     then vertically, where <application>Midnight Commander</application> is
     then launched. Who says the command line is not useful?  ;-)
    </para>
   </tip>

  </sect1>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->

    <sect1 id="environment">
     <title>Environment</title>
      <para>
	 The following variables are set by &term;: 
	 
      <itemizedlist>
	  <listitem>
	    <para>
          <envar>TERM</envar>
         </para>
	    <para>
          This variable is set to <quote>xterm</quote> by default.  Some curses
          implementations and applications based on curses might want the
          value to be <quote>xterm-color</quote>, <quote>color-xterm</quote>
          or <quote>xterm-debian</quote> to support color.  You might need to
          change this setting if your application does not display in color to
          one of those values, or for other special case situations. This can
          also be set via the <option>--termname </option> <link
          linkend="options">command line option</link>.
	    </para>
	  </listitem>

	  <listitem>
	    <para>
          <envar>COLORTERM</envar>
         </para>
	    <para>
          This variable is set by &term; to <quote>gnome-terminal</quote>.
          Various applications (especially the Slang-based applications) use
          this setting to determine whether the terminal supports color or
          not.
	    </para>
	  </listitem>

	  <listitem>
	    <para>
          <envar>WINDOWID</envar>
         </para>
	    <para>
           This variable contains the X11 Window identifier. In some
           situations, this is used by applications to modify the contents of
           the Window, or to provide special effects.
	    </para>
	  </listitem>
	</itemizedlist>

    </para>
   </sect1>
<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
<sect1 id="helpers">
<title>Helper Applications</title>
 <para>
  &term; comes with two supplemental programs to help extend its functionality
  into other areas.
 </para>

<!--   ~~~~~       New section      ~~~~~     -->
<sect2 id="mgt-helper">
<title><application>mgt-helper</application></title>
 <para>
  <command>mgt-helper</command> is a <application>bash</application> script
  meant to be used in conjunction with &term; to extend &term;'s usefulness in
  a shell environment. Which is where a lot of what we do at the command line
  winds up -- in <application>bash</application>, since this is the default 
  shell for Linux, and common on many Unices.
 </para>
 <para>
  The script itself is a collection of subroutines  that can be
  invoked from within &term;'s <guimenu>Edit Commands</guimenu> 
  or <guimenu>Keybindings</guimenu> features, and in some cases, used on 
  the command line with other &term; options. These subroutines are
  essentially independent of each other, and should be invoked individually.
 </para>
 <para>
  Some of the more interesting features are: the ability to have a custom 
  <application>bash</application> history file defined specifically for a 
  <guibutton>Tab</guibutton> (what you get with the <keycap>UpArrow</keycap>
  key); the use of text based applications as GNOME <quote>Document</quote>
  (URL) handlers in a split or self-contained <guibutton>Tab</guibutton>; and
  the ability to run complex, compound commands from <guimenu>Edit
  Commands</guimenu> to initialze <guibutton>Tabs</guibutton> and terminals.
 </para>

 <para>
  There are some known limitations: <command>mgt-helper</command> is very much
  bash-centric, and most of the routines will probably not work with other 
  shells without modification (please send patch :). The URL Handlers only 
  work on Linux.
 </para>
 
 <!--   ~~~~~       New section      ~~~~~     -->
 <sect3>
 <title>Configuration</title>
  <para> 
   There are a number of variables that can be defined to alter
   <command>mgt-helper's</command> behavior and set user preferences. These
   are all listed in the script itself, though some may be commented out.
  </para>

  <para> 
   It is highly recommended that such user or site preferences be put in
   another file. This can be <filename>/etc/mgt-helper.rc</filename> for
   site-wide preferences, or <filename>$HOME/.mgt-helper.rc</filename> for
   individual user preferences. Both of these files are checked by
   <command>mgt-helper</command> automatically, with the latter taking
   precedence over other files, and the defaults as set in the script itself.
  </para>

  <para> 
   In addition, since these configuration files will be sourced by
   <application>Bash</application>, any other variables, or manipulation of
   the <application>bash</application> environment, can be added at your
   discretion. For instance, you could set <application>Bash's</application>
   <literal>TMOUT</literal> (time out) variable, and even base this action
   conditionally on other environment factors, or the contents of the command
   line. Or you could check the command line contents, see if a url handler is
   being invoked, then check the URL itself, and alter the default handler
   dynamically based on certain conditions. For instance, use
   <application>Mozilla</application> for your favorite multi-media sites, and
   <application>w3m</application> for less interesting HTTP sites. Or perhaps use the
   document extension to determine the choice of browsers, e.g.
   <application>Mozilla</application> for shockwave, or
   <command>wget</command> for web-hosted RPMs.
  </para>

 </sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
<sect3>
<title>Document (URL) Handlers</title>
 <para> 
  This feature is provided so that text based applications may be used with
  GNOME <quote>document</quote> handling inside &term;. Presumably so that
  such documents can be opened in a split terminal or Tab.
 </para>

 <para> 
  This is basically a feature of GNOME that allows user defined applications
  for different <quote>document</quote> types. Typically, these are GUI apps.
  When the mouse is over a type of URL that &term; can identify, the URL 
  is highlighted by an underscore. It can then be <quote>launched</quote>
  with <keycap>CTRL-MiddleMouse</keycap>. Which application is used, is 
  typically configured in GNOME.
 </para>
 
 <para>
  To change the default GNOME behavior, you will first have to set
  <command>mgt-helper</command> with the appropriate command line option
  (e.g. <literal>-u</literal>) as the handler for GNOME (see below). This can
  be done through the GNOME menu interface, or by directly editing
  <filename>$HOME/.gnome/Gnome</filename> with a text editor (carefully!). 
 </para>
 
 <para> 
  Secondly, be aware that now, <emphasis>any</emphasis> GNOME application that
  tries to access this feature, will be using <command>mgt-helper</command> as
  the application of choice, even if it is some other application altogether.
  This means that there must be alternate handlers set up, preferably in
  either <filename>$HOME/.mgt-helper.rc</filename> or
  <filename>/etc/mgt-helper.rc</filename>, since other applications don't know
  about &term; and its features. In short, that just will not work at all
  (unless alternate applications are provided for). Defaults are provided,
  but probably won't work on some systems. See the script for appropriate
  variable names, and re-define as needed.
 </para>

 <tip>
  <para>
   <command>mgt-helper</command> will use sane defaults for all URL handlers,
   but you can over-ride these by setting user or site preferences in the
   configuration files.
  </para>
 </tip>
 
 <para>
  <emphasis role="strong">Note:</emphasis> This feature only works on Linux 
  at this time.
 </para>

</sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
<sect3>
<title>Command Line Options</title>
<para>
 This is a list of available <command>mgt-helper</command> command line
 options. See examples in next
 section. The basic syntax is:
</para>

<screen>
  mgt-helper <emphasis>[option] CMD_OPTION [arguments]</emphasis></screen>

<para>
 The following general options may be combined.
</para>

<para>
 <itemizedlist>

  <listitem>
    <para>
     <option>-D</option>
    </para>
    <para>
     Turn on <quote>verbose</quote>, debugging mode, which writes some 
     debug type output to the screen and also to
     <filename>/tmp/mgt-helper.debug</filename>.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-r </option> <replaceable>RC_FILE</replaceable>
    </para>
    <para>
     Specify this <replaceable>RC_FILE</replaceable>, which is 
     parsed after any other config files, and will over-ride 
     any previously defined settings.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-T</option>
    </para>
    <para>
     Force this Command to use a full Tab.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-H</option>
    </para>
    <para>
     Force this Command to a horizontally split Tab.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-V</option>
    </para>
    <para>
     Force this Command to a vertically split Tab.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-W</option>
    </para>
    <para>
     Force this Command to a <quote>New Window</quote>.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-WT</option>
    </para>
    <para>
     Force this Command to a <quote>New Window</quote> with appropriate 
     start-up Tabs for the current Class.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-A </option> <replaceable>ACTION</replaceable>
    </para>
    <para>
     Use this &term; <replaceable>ACTION</replaceable> for output 
     of the Command. Example: <option>--add-tab</option>, or 
     <option>--add-tab --tclass <replaceable>myclass</replaceable></option>.
     Don't get carried away with this, as all actions will not work. Notably, 
     <option>-x</option>, which is used by <literal>CMD_OPTIONS</literal>
     listed below. And, may not be appropriate for all
     <literal>CMD_OPTIONS</literal>. Be sure to quote if there is any
     whitespace. 
    </para>
  </listitem>

 </itemizedlist>
</para>

<para>
 Use only one <literal>CMD_OPTION</literal> option at a time (but can be 
 combined with general options above).
</para>

<para>
 <itemizedlist>

  <listitem>
    <para>
     <option>-h</option>, <option>--history</option> <replaceable>EXTENSION</replaceable>
    </para>
    <para>
     Specify a user defined, custom <application>bash</application> history
     file for this terminal/Tab, where <replaceable>EXTENSION</replaceable> is
     a user-defined, unique string. This probably only works with
     <application>bash</application> right now. Use with <guimenu>Edit
     Commands</guimenu>. 
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-u</option>, <option>--url-handler</option>, <option>--http-handler</option>
    </para>
    <para>
     Set <command>mgt-helper</command> as the GNOME URL Handler for HTTP 
     (WWW) URLs. Also can be used for HTTPS URLS. See full example syntax
     below. You will have to either define this in the GNOME menus as the
     <quote>Document</quote> handler. Or, hand edit your
     <filename>$HOME/.gnome/Gnome</filename> file and set accordingly. The
     idea here is to open a new <guibutton>Tab</guibutton> (or split
     terminal), with a text client running. There is no default HTTP handler
     set; <command>mgt-helper</command> will look for <command>w3m</command>,
     <command>links</command>, and <command>lynx</command> and use whatever it
     finds first. Though you can set a preference for this (and other handlers
     too).
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-f</option>, <option>--ftp-handler</option>
    </para>
    <para>
     Set <command>mgt-helper</command> as the GNOME URL Handler for FTP 
     URLs, similar to above. Default handler is whatever is used for 
     HTTP above.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-m</option>, <option>--mailto-handler</option>
    </para>
    <para>
     Set <command>mgt-helper</command> as the GNOME URL Handler for mailto 
     style URLs (i.e. email addresses), similar to above. Default handler is
     <command>mutt</command>. 
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-F</option>, <option>--file-handler</option>
    </para>
    <para>
     Set <command>mgt-helper</command> as the URL Handler for files, 
     similar to above. Depending on what <command>mgt-helper</command> thinks
     of the file, it will either provide some information itself, or spawn 
     a file manager (default is <application>Midnight
     Commander</application>).
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-x</option>, <option>--execute</option>
    </para>
    <para>
     Use this option to run complex, compound commands from within 
     &term;, e.g. as an <guibutton>Edit Commands</guibutton> command.
     For example, a command like <literal>ps | less</literal> does not 
     work from <guibutton>Edit Commands</guibutton>. But by wrapping 
     this in <command>mgt-helper</command> (or another script), it 
     does work, since now the shell is handling the parsing of the 
     command string (which happens to be shell constructs).
    </para>
  </listitem>
  
  <listitem>
    <para>
     <option>-U</option>, <option>--user-guide</option>
    </para>
    <para>
     Open this <citetitle>User Guide</citetitle> in a <guibutton>Tab</guibutton>
     (or split terminal). Use with <guibutton>Edit Commands</guibutton>, or 
     from the command line.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-s</option>, <option>--ssh</option> <replaceable>[ssh args]</replaceable> <option>HOST</option> <replaceable>[command]</replaceable>
    </para>
    <para>
     Use <command>mgt-helper</command> as a <command>ssh</command> wrapper. 
     This is probably only useful where the <command>sshd</command> daemon may
     be running as another user, and thus breaks our GNOME URL Handling
     tricks. Use with <guibutton>Edit Commands</guibutton>, if needed (ie URL
     Handlers don't work). 
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-S</option>, <option>--su</option> 
    </para>
    <para>
     Use <command>mgt-helper</command> as a <command>su</command> wrapper. 
     <command>Su</command> will also break the &term; URL Handling extensions.
     Use this instead of the &term; <guimenuitem>Root</guimenuitem> menu
     selection, or with <guibutton>Edit Commands</guibutton>.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-g</option>, <option>--google</option> 
    </para>
    <para>
     Search Google from <guibutton>Edit Commands</guibutton>.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-lg</option>, <option>--lin-google</option> 
    </para>
    <para>
     Same as above but searches on google.com/linux only.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-l</option>, <option>--lookup</option> <replaceable>[WORD]</replaceable>
    </para>
    <para>
     Look up a word in an on-line dictionary. This will use the
     <command>dict</command> command if availalbe, otherwise the
     <citetitle>Merriam Webster</citetitle> on-line dictionary is used.
     Provided as a convenience feature only. If
     <replaceable>WORD</replaceable> is omitted, then user is prompted for
     word to look up.
    </para>
  </listitem>

  <listitem>
    <para>
     <option>-d</option>, <option>--debug</option> <replaceable>COMMAND [args]</replaceable>
    </para>
    <para>
     This is a simple troubleshooting aid to capture
     error output from shell commands (<emphasis>not</emphasis> &term;
     internals) that might vanish quickly otherwise. For instance, you 
     have a <quote>command</quote> to open a <guibutton>Tab</guibutton>,
     but there is some error and the <guibutton>Tab</guibutton> closes 
     too quickly to see what happened. For use with <guibutton>Edit
     Commands</guibutton>. 
    </para>
  </listitem>

  <listitem>
    <para>
     <option>--show-all</option> 
    </para>
    <para>
     This dumps all <application>bash</application> variables from the 
     <command>mgt-helper</command> environment to <literal>STDOUT</literal>,
     and also writes the same data to <filename>/tmp/mgt-helper.debug</filename>.
     For simple troubleshooting purposes.
    </para>
  </listitem>

 </itemizedlist>
</para>

</sect3>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
<sect3>
<title>Examples</title>
 <para>
  A few quick examples of <command>mgt-helper</command> usage, of no 
  particular value other than to illustrate the kinds of things that can be
  done. By and large, these examples are meant to be used with
  <guibutton>Edit Commands</guibutton>.
 </para>

 <example><title>Create a custom <application>bash</application> history file</title>
  <para> 
   <programlisting>&nbsp;&nbsp;<command>mgt-helper -h</command> my_tab</programlisting>
  </para>
  <para>
   This will create, and subsequently use, a <application>bash</application>
   history file named <filename>.bash_history-my_tab</filename>, whenever this 
   <guibutton>Tab</guibutton> is opened. So what you get with the
   <keycap>UpArrow</keycap> will only be command history that is used in this 
   <guibutton>Tab</guibutton>. It also uses the <command>mgt-helper</command>
   variable <literal>SHELL_CMD</literal> to start the shell. 
   Use with <guibutton>Edit Commands</guibutton>.
  </para>
 </example>

 <example><title>Read my mail on another system, in such a way that URL Handling works like we want</title>
  <para> 
   <programlisting>&nbsp;&nbsp;<command>mgt-helper -s</command> -t some_host.org&nbsp;&nbsp; <replaceable>mutt</replaceable></programlisting>
  </para>
  <para>
   This essentially translates out to: <command>ssh -t some_host.org
   <replaceable>mutt</replaceable></command>, and is only useful to make 
   sure that URL Handling extensions are sure to work.
   Use with <guibutton>Edit Commands</guibutton>.
  </para>
 </example>
 
 <example><title>Create a shell/Tab that times out in 15 minutes</title>
  <para> 
   <programlisting>&nbsp;&nbsp;<command>mgt-helper -x</command> <replaceable>export TMOUT=900; bash --login</replaceable></programlisting> 
  </para>
  <para>
   <application>Bash's</application> <literal>TMOUT</literal> feature only 
   works for interactive shells, and while the user is sitting at the 
   <application>bash</application> prompt.
   Use with <guibutton>Edit Commands</guibutton>.
  </para>
 </example>

 <example><title>Show who is logged in and what they are up to</title>
  <para> 
   <programlisting>&nbsp;&nbsp;<command>mgt-helper -x</command> <replaceable>w |  sed 's/   //' |  /usr/bin/less -Ps"`hostname -s`\: who is that"</replaceable></programlisting> 
  </para>
  <para>
   We trimmed a little gratuitous whitespace with <command>sed</command> here too, just so it fits better.
   Use with <guibutton>Edit Commands</guibutton>.
  </para>
 </example>

 <example><title>Show file listing with current directory</title>
  <para> 
   <programlisting>&nbsp;&nbsp;<command>mgt-helper -x</command> <replaceable>ls  -laF  | /usr/bin/less -P "All files for\: `pwd` `date`"</replaceable></programlisting> 
  </para>
  <para>
   Use with <guibutton>Edit Commands</guibutton>. 
  </para>
 </example>


 <example><title>Create a <quote>New Mail</quote> Tab for <command>mutt</command></title>
  <para> 
   <programlisting>&nbsp;&nbsp;<command>mgt-helper  -x</command> <replaceable>while : ; do mutt -H /dev/null ; clear ; done</replaceable></programlisting> 
  </para>
  <para>
   This will create a <guibutton>Tab</guibutton> just for composing new mail in
   <command>mutt</command>. (It is not useful for replying, just starting 
   a new mail from scratch.)
  </para>
 </example>

 <example><title>Setting GNOME Document Handlers</title>
  <para>
   If you want to hand edit your <filename>~/.gnome/Gnome</filename> file to 
   set up URL Handling for use in &term;:
  </para>
  <para> 
   <programlisting>
    [URL Handlers]
    file-show=mgt-helper -F "%s"
    mailto-show=mgt-helper -m "%s" 
    http-show=mgt-helper -u "%s"
    https-show=mgt-helper -u "%s"
    ftp-show=mgt-helper -f "%s"
   </programlisting> 
  </para>
  <para>
   We are just showing the relevant ones here. The handlers that &term;
   will use are defined in the script as:
  </para>
   <programlisting>
    HTTP_HANDLER (undefined, script will look for <command>w3m</command>, <command>links</command>, or <command>lynx</command>)
    FTP_HANDLER (undefined, and uses same as above by default)
    MAILTO_HANDLER=mutt
    FILE_HANDLER=mc (though some files are handled by <command>mgt-helper</command> itself)
   </programlisting> 
   <para>
    And you must set alternate handlers for non-&term; applications (if you
    use them elsewhere):
   </para>
   <programlisting>
    GNOME_HTTP_HANDLER
    GNOME_FTP_HANDLER
    GNOME_MAILTO_HANDLER
    GNOME_FILE_HANDLER
   </programlisting> 
   <para>
    Again, it is best to set these in <filename>$HOME/.mgt-helper.rc</filename>.
   </para>
 </example>

 <example><title>Advanced usage: Customizing URL Handlers</title>
  <para>
   OK, let's assume all this makes sense, and we have URL handling 
   set up in GNOME, and <command>mgt-helper</command> has been configured 
   enough to know it works OK, including Document handlers in GNOME. Now,
   let's do something a little more interesting. Let's look for specific file
   types, and dynamically alter our Handler, and
   <command>mgt-helper's</command> behavior based on the URL's file type.
  </para>
  <para>
   Let's say we often download source tarballs, that are gzipped tar archives.
   We don't need a web browser to download this. And what do we do right 
   after downloading? We unpack it! So we make a custom handler for this 
   situation. Put this in <filename>~/.mgt-helper.rc</filename>, and you 
   are there:
  </para>
  <para> 
   <programlisting>
 
 # Check the incoming command line to see if we are handling, and if it is a tgz, etc.
 if [ "$1" = "-f" -o "$1" = "-u" ] && [ -f $PTS_FILE ] && echo $2 |grep "\.tgz$\|\.tar\.gz$\|\.Z$" >/dev/null;
  then
    
    # Make a temporary directory using the base filename. Must be exported.
    export dldir=/tmp/`basename $2 |sed 's,\(\.tar\.gz\|\.tgz\|\.Z\)$,,'`
    mkdir -p $dldir 
    
    # Get our current /dev/pts info from MGT (special file created 
    # during handling) that is necessary. $PTS_FILE is defined in mgt-helper
    # already as ~/.mgt_tty.
    pts=`cat $PTS_FILE`
    
    # Make sure to remove it now so it does not cause trouble later!!!
    rm -f $PTS_FILE
    
    # Now do the voodoo.
    exec /usr/bin/multi-gnome-terminal --nowait --add-tab --tname `basename $dldir` -x \
    "mgt-helper -x cd $dldir && wget -P . $2 && tar zvfx `basename $2` && (bash ;:) ||\
     read -p \"Failed, press ENTER to continue...\"" >$pts || exit 1
 fi
   </programlisting> 
  </para>
  <para>
   The first part is just shell stuff to get ready. First find if we are going
   to be the handler here, and that we have the file type we want, and then
   create a tmp directory to download into. Next, get our
   <filename>/dev/pts</filename> info (important!) that &term; feeds us just
   for this purpose so &term; will know where to open a new terminal, then
   remove the file to keep things clean for the next application that might
   come calling. This is the trigger we need, to know if the calling program is
   &term; or not. If not, we need to provide an alternate application (this is
   done elsewhere in <command>mgt-helper</command>).
  </para>
  <para>
   Now our final command does this: We will be creating a new
   <guibutton>Tab</guibutton> that will be home to all our command line
   voodoo. Which is: change to our new directory, use <command>wget</command> 
   to download our file, if successful then unpack it, 
   and if all is still well, start a new shell running in our 
   newly created <guibutton>Tab</guibutton>. If anything fails, we 
   get notified with the original error message still displayed on screen.
  </para>
  <para>
   Note we made a recursive call to <command>mgt-helper -x</command> in 
   the command passed to &term;. It is much better to let a shell 
   expand compound commands like we are using here and interpret
   metacharacters (though it certainly does not have to be
   <command>mgt-helper</command> that does this). Also,
   <command>mgt-helper</command> uses certain variables we might have wanted
   to take advantage of here: <literal>$MGT</literal> in case there is more
   than one version installed, or its not in the <literal>$PATH</literal>, and
   <literal>$URL_ACTION</literal> which can be used to set a preference for
   how the new terminal is created, e.g. a split, a new tab, or a new window.
  </para>
  <para>
   One final note ... this only works on a fully qualified URL, e.g. 
   <filename>http://someplace.org/somepath/some.tgz</filename>.
  </para>
  <para>
   Similar customized handlers could conceivably be designed for other file 
   types, or for specific sites.
  </para>
 </example>

</sect3>

</sect2>

<!--  ~  End section  ~  -->

<!--   ~~~~~       New section      ~~~~~     -->
<sect2 id="mgt-pty-helper">
<title><application>mgt-pty-helper</application></title>
 <para>
  <command>mgt-pty-helper</command> is a simple, one dimensional program
  that facilitates proper updating of the <literal>utmp</literal>
  (<literal>wtmp</literal>) log database. This records who is logged in, and
  what they are doing, and is used by other programs like
  <command>who</command>. <command>mgt-pty-helper</command> does this so 
  that &term; itself does not have to be suid root, and thus is a more 
  secure way of doing things.
 </para>
 <para>
  For this to function properly, <command>mgt-pty-helper</command> should 
  have permissions set <command>chmod g+s</command>, and the group owner 
  should be the same as the group owner of the <literal>utmp</literal> logs
  (possibly <filename>/var/log/utmp</filename> or
  <filename>/var/log/wtmp</filename>). The correct group ID could be
  <quote>tty</quote>, or <quote>utmp</quote>, or something else altogether,
  depending on platform and packager. If you have installed from raw source,
  you will have to do this yourself. RPM packages should be doing this for
  you, though you may want to check and make sure it is working correctly.
 </para>
 <para>
  If tracking this information is not important, then not to worry ;-) Once 
  installed, there is no user inter-action with <command>mgt-pty-helper</command>.
 </para>

</sect2>
</sect1>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->

   <sect1 id="Authors">
    <title>Authors and Credits</title>

     <para>
      Cristiano De Michele is the creator and author of &term;.
     </para>
     
     <para>
      Various people have contributed to &term;, in one way or another:
     </para>

     <para>
      Most of the <link linkend="newfeatures">new features</link> of &term; are
      the work of Cristiano. Other contributing developers that have made 
      significant contributions include Soeren Sonnenburg and Guillermo
      Ontanon. 
     </para>

     <para>
       Erik Bourget, Stefan Kost and Jan Oberlaender have also contributed.
     </para>
     
    <para>
     <application>Multi-gnome-terminal</application> is partially based on the
     original work of Michael Zucchi, Miguel de Icaza, Erik Troan and others.
     &term; also includes additional influences from
     <application>screen</application>, <application>konsole</application>,
     <application>xterm</application>, and <application>Eterm</application>. 
    </para>

    <para>
      This <citetitle>Guide</citetitle> was updated by Hal Burgiss for &term;
      and retains some of the original content written for &oldterm; by Miguel
      de Icaza and Michael Zucchi with minor contributions by Alexander
      Kirillov. Please send comments or suggestions on this documentation to
      <email>multignometerm-devel@lists.sourceforge.net</email>.
    </para>

<!--   ~~~~~       New section      ~~~~~     -->
  <sect2 id="bugs">
   <title>Bugs, Feature Requests, and Mailing Lists</title>
    <simplelist>
     <member>
     <ulink url="http://sourceforge.net/tracker/?group_id=34480&#38;atid=411232">Bug Reports</ulink>
     </member>
     <member>
      <ulink url="http://sourceforge.net/tracker/?atid=411235&#38;group_id=34480&#38;func=browse">Feature Requests</ulink>
     </member>
     <member>
      <ulink url="http://sourceforge.net/mail/?group_id=34480">Mailing Lists</ulink>
     </member>
     <member>
     <ulink url="http://sourceforge.net/tracker/?atid=411234&#38;group_id=34480&#38;func=browse">Patch Tracker</ulink>
     </member>
     <member>
      <ulink url="http://multignometerm.sourceforge.net/">Home Page</ulink>
     </member>
    </simplelist>

   </sect2>
  </sect1>
<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
 <sect1 id="license">
  <title>License</title>
   <para>
    This program is free software; you can redistribute it and/or modify it
    under the terms of the <ulink url="gnome-help:gpl"
    type="help"><citetitle>GNU General Public License</citetitle></ulink> as
    published by the Free Software Foundation; either version 2 of the
    License, or (at your option) any later version.
   </para>
  <para>
   This program 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 <ulink type="help"
   url="gnome-help:gpl"><citetitle>GNU General Public
   License</citetitle></ulink> for more details.
  </para>
  <para>
   A copy of the <ulink type="help" url="gnome-help:gpl"><citetitle>GNU
   General Public License</citetitle></ulink> is included as an appendix to
   the <citetitle>GNOME Users Guide</citetitle>.  You may also obtain a copy
   of the <ulink type="help" url="gnome-help:gpl"><citetitle>GNU General
   Public License</citetitle></ulink> from the Free Software Foundation by
   visiting <ulink type="http" url="http://www.fsf.org/">their Web
   site</ulink> or by writing to <address> Free Software Foundation, Inc.
   <street>59 Temple Place</street> - Suite 330 <city>Boston</city>,
   <state>MA</state> <postcode>02111-1307</postcode> <country>USA</country>
   </address>
  </para>
 </sect1>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
<appendix id="appendix">
 <title>Appendix: Command Examples</title>
 <para>
  The following will include some examples of things that can be 
  done with &term;'s <link linkend="edit-commands">Edit Commands</link>
  feature. The examples below represent the <quote>command</quote> input 
  field (third field) at the top of the <guibutton>Edit Commands</guibutton>
  Window. You will have to supply your own Command name, and path if wanted.
  Note that some of the examples are included with the <link
  linkend="mgt-helper"><command>mgt-helper</command> script</link>.
 </para>

 <para>
  Starting shells:
 </para>

 <example><title>Start a login shell</title>
  <para>
   The most typical usage is to start a normal, interactive shell.
   The <option>--login</option> bash command line option above is optional.
  </para>
  <para> 
   <replaceable>&nbsp;&nbsp;bash --login</replaceable>
  </para>
 </example>

 
 <example><title>Start a remote shell with <command>ssh</command></title>
 <para>
  But we can also start a remote shell on another host:
 </para>
  <para> 
   <replaceable>&nbsp;&nbsp;ssh  some_host.example.com</replaceable>
  </para>
 </example>


 <example><title>Start a mail reader</title>
 <para>
  We can also start any text based program automatically, like a mail 
  reader, or news reader:
 </para>
  <para> 
   <replaceable>&nbsp;&nbsp;pine</replaceable>
  </para>
 </example>

 <example><title>Specify a specific mailbox</title>
 <para>
  You can watch multiple mailboxes with multiple instances 
  of your mail reader. This way the <guibutton>Tab</guibutton> 
  labels will change color to alert you to new mail in that mail box.
 </para>
  <para> 
   <replaceable>&nbsp;&nbsp;mutt  -f  ~/Mail/inbox</replaceable>
  </para>
  <para>
   And another command for another mailbox:
  </para>
  <para> 
   <replaceable>&nbsp;&nbsp;mutt  -f  ~/Mail/multignometerm-usability</replaceable>
  </para>
  <para>
   We could get really fancy and create a special <link
   linkend="classes">Class</link>, maybe titled <quote>mail</quote>, 
   and create a custom start-up <link
   linkend="startup-tabs"><guibutton>Tab</guibutton></link> for each 
   mailbox we want to access.
  </para>
 </example>

 <example><title>Start a text web browser</title>
  <para> 
   <replaceable>&nbsp;&nbsp;w3m  ~/my_bookmarks</replaceable>
  </para>
  <para>
   In fact, you could create a sub-menu with your <quote>favorite</quote>
   links all in their own sub-menu:
 <blockquote>
  <simplelist>
   <member>
    w3m/freshmeat
   </member>
   <member>
    w3m/slashdot
   </member>
   <member>
    w3m/sourceforge
   </member>
   <member>
    w3m/user friendly
   </member>
  </simplelist>
 </blockquote>
 </para>

 </example>
<para></para>

 <example><title>Start a remote shell <emphasis>and</emphasis> start a program
 on the remote host</title> 
  <para> 
   <replaceable>&nbsp;&nbsp;ssh -t  some_host.example.com  pine</replaceable>
  </para>
 </example>

 <example><title>'watch' netstat connections</title>
  <para> 
   <replaceable>&nbsp;&nbsp;watch  netstat  -tn</replaceable>
  </para>
 </example>

 <example><title>Watch the <quote>message</quote> log</title>
  <para> 
   <replaceable>&nbsp;&nbsp;tail  -f  /var/log/messages</replaceable>
  </para>
  <para>
    The <guibutton>Tab</guibutton> labels will also change colors every 
    time a new entry is made to the log.
  </para>
 </example>


 <!-- script examples -->

 <para>
  To this point, all our examples have been single shell commands with
  arguments (though the arguments in some cases are other commands). 
  If we want to combine commands for more complex usage, like piping
  <command>ps</command> to <command>less</command>:
 </para>

 <para> 
  <replaceable>&nbsp;&nbsp;/bin/ps ax  |  less</replaceable>
 </para>

 <para>
  then it is useful to put these types of commands in a shell script, and then
  invoke the script from <guimenuitem>Edit Commands</guimenuitem>. Much more
  can be done this way. Alternately, complex commands like the above 
  example can be executed successfully from <guimenuitem>Edit Commands</guimenuitem>
  with the help of <command>mgt-helper</command> and the <quote>-x</quote>
  option. Example:
 </para>

 <para> 
  <replaceable>&nbsp;&nbsp;mgt-helper -x /bin/ps ax  |  less</replaceable>
 </para>

 <para>
 Some other, <quote>nicer</quote> ideas:
 </para>

 <example><title>A Google search</title>
  <programlisting>
  #!/bin/sh
  txt_browser=w3m

  read -e -p "search google/linux for: " search_str
  [ -z "$search_str" ] && exit
  $txt_browser \
  "http://www.google.com/linux?num=50&#38;restrict=linux&#38;\
  hl=en&#38;lr=lang_en&#38;q=%22$search_str%22&#38;btnG=Google+Search"
  </programlisting>
 <para>
  This uses the shell <quote><command>read</command></quote> command 
  to get user input, which is passed to a text web browser. If the 
  user enters nothing, or after the web browser exits, then the script 
  exits also, effectively closing the <guibutton>Tab</guibutton>. (The 
  google search parameters also include some personal preferences that 
  might be customized as well. The above example is available 
  with <command>mgt-helper</command> as <command>mgt-helper -lg</command>.)
 </para>
 </example>

 <example><title>Look up a word in a Dictionary</title>
  <programlisting>
  #!/bin/sh
  txt_browser=w3m
  
  read -e -p "Look up: " word
  [ -z "$word" ] && exit
  $txt_browser "http://www.m-w.com/cgi-bin/dictionary?book=Dictionary&#38;va\
   =$(echo "$word" | sed 's/ /+/')"
  </programlisting>
 <para>
  This looks up any word in the <citetitle>Merriam-Webster</citetitle> on line 
  dictionary, also using <command>read</command> and a text browser, like 
  above. (The above example is available with <command>mgt-helper</command> as
  <command>mgt-helper -l</command>.)

 </para>
 </example>

 <example><title>A better netstat watcher</title>
  <para>
   Above we had an example of <command>watch netstat -tn</command> 
   that displays a continually self updating display of all our 
   network connections. But <command>watch</command> wants to 
   put a clock on the screen, and as it updates the <guibutton>Tab</guibutton>
   titles alternate from <literal>blue</literal> to <literal>red</literal>
   every 2 seconds as the screen updates. Very annoying IMO!
  </para>
  <para>
   So here is a short script to do most of the same thing. It just writes 
   the <command>netstat</command> output to a file, and only dumps this 
   file to screen when and if the <command>netstat</command> output changes.
   It also uses some filters to eliminate some things we (errr, I) did not 
   want to be bothered with (e.g. <literal>CLOSE_WAIT</literal> condition, 
   see the <command>netstat</command> man page).
  </para>
  <programlisting>
  #!/bin/sh
  # display netstat output only if it changes

   tmp_file=/tmp/_netstat
   exclude='127\.0\.0.*127\.0\.0\|_WAIT'
   command="netstat -tn |grep -v \"$exclude\""
   eval $command |tee $tmp_save.sav
   while :; do 
     eval $command > $tmp_file.tmp
     ! diff $tmp_file.tmp $tmp_save.sav &#38;&#38; clear &#38;&#38; cat $tmp_file.tmp |tee $tmp_save.sav
     sleep 2
   done
  </programlisting>
 <para>
  Now the <guibutton>Tab</guibutton> title will only change color when 
  the connections change, and we are alerted accordingly.
 </para>
 </example>


 <example><title>Starting with a Split <guibutton>Tab</guibutton></title>
  <para>
   To have &term; start with a split <guibutton>Tab</guibutton>, create
   a short script like below. Name it something like
   <command>add-htab.sh</command>.
  </para>
  <programlisting>
  #!/bin/sh
   multi-gnome-terminal --add-tab --hsplit
  </programlisting>
 <para>
  Now go into <link linkend="edit-commands"><guimenuitem>Edit
  Commands</guimenuitem></link>, and add a new startup
  <guibutton>Tab</guibutton> (from the second tab). Use
  <command>add-htab.sh</command> as the command to open the
  <guibutton>Tab</guibutton>. Save and apply changes, and make sure
  <quote>Don't open startup tabs</quote> is unchecked. Now, when &term; is
  started, it will be started with a split window. Remember too, you can have
  different startup command configurations for different <link
  linkend="classes">classes</link>.
 </para>
 </example>


 <example><title>Having specific <literal>HISTORY</literal> files for <guibutton>Tabs</guibutton></title>
  <para>
   It would be nice if &term; could save the bash (or other shell) history for 
   each <guibutton>Tab</guibutton>. So when you opened a new
   <guibutton>Tab</guibutton>, there is only history from your last session 
   in that <guibutton>Tab</guibutton>. But this can be done with a simple
   shell script quite easily. Create a script like below, and name it something like
   <command>bash_wrap.sh</command>:
  </para>
  <programlisting>
  #!/bin/sh

    if [ "$1" == "" ]
    then
     BEXT=""
    else
     BEXT=-$1
    fi
    
    export HISTFILE=$HOME/.bash_history$BEXT
    exec bash --login
 </programlisting>
 <para>
  Put this script in your <literal>PATH</literal> somewhere 
  (e.g. <filename>/usr/local/bin/</filename>). 
  Now edit your custom &term; Commands to use the name of this 
  script, instead of just <quote>bash</quote>, and some unique 
  argument for the script:
 </para>
 <programlisting>
  Name          Path            Command
  -------------------------------------------------
  Shell1        None          bash_wrap.sh  myshell1
  Shell2        None          bash_wrap.sh  myshell2
  Shell3        None          bash_wrap.sh  myshell3
 </programlisting>
 <para>
  What identifier you use for the argument (e.g <literal>myshell1</literal>), 
  is not important, just so it is unique. Now <application>bash</application>
  will load that history file whenever that <guibutton>Tab</guibutton> is 
  opened. (The above functionality is available 
  with <command>mgt-helper</command> as <command>mgt-helper -h</command> 
  <replaceable>EXT</replaceable>.)

 </para>
 </example>

 <literallayout>
  <!-- space eater -->
 </literallayout>

 <para>
  Maybe you prefer just typing simple commands rather than going through 
  the GUI, or defining a keyboard shortcut? Sometimes this is simpler. Some
  ideas using bash <quote>aliases</quote> ...
 </para>

 <para>
  A simple <application>bash</application> alias to just create a new 
  <guibutton>Tab</guibutton> in the current Window:
 </para>

 <programlisting>
  alias m="multi-gnome-terminal  --add-tab"
 </programlisting>

 <para>
  Now, create a <guibutton>Tab</guibutton> and running the
  <command>vim</command> editor at the same time:
 </para>

 <programlisting>
  alias me="multi-gnome-terminal  --add-tab  --tname=Vim  -x vim"
 </programlisting>

 <para>
  The <guibutton>Tab</guibutton>, of course, closes neatly whenever 
  you exit <command>vim</command>.
 </para>

 <para>
  Now, a open a man page in its own <guibutton>Tab</guibutton>:
 </para>

 <programlisting>
  alias mm="multi-gnome-terminal  --add-tab  --tname=Man  -x  /usr/bin/man"
 </programlisting>

 <para>
  Maybe we want to work in one terminal, and be able to read the man 
  page in the same Window at the same time. So we will do the same here, 
  except just split the current <guibutton>Tab</guibutton>:
 </para>

 <programlisting>
  alias mmh="multi-gnome-terminal  --hsplit  -x /usr/bin/man"
 </programlisting>

 <para>
  Using shell functions, gives even more flexibility:
 </para>

 <programlisting>
  mm () {
   args=($@)
   multi-gnome-terminal --add-tab --tname "Man ${args[$(($# - 1))]}" -x /usr/bin/man $*
   unset args
  }
 </programlisting>

 <para>
  The only real difference between this and the previous
  <application>bash</application> <quote>mm</quote> alias, is that the
  <guibutton>Tab</guibutton> label now shows the name of the man page, instead
  of just <quote>Man</quote> (and allows for things like <quote>man 5
  crontab</quote>).
 </para>

 <para>
  Maybe you have better ideas ;-)
 </para>

 <literallayout>
  <!-- space eater -->
 </literallayout>
 
 <para>
  If you have any cool command tricks, please submit to: 
  <email>multignometerm-devel@lists.sourceforge.net</email>.
 </para>

</appendix>

<!--  ~  End section  ~  -->

<!--   ~~~~~       New section      ~~~~~     -->
<appendix id="appendixb"><title>Appendix: Screenshots</title>

<!--
 *******************************************************************
 NOTE: that the proper CVS path for images is ../figures relative to 
 the outputted HTML, but the post-install path is ./figures (just 
 below HTML).
 *******************************************************************
-->
<para>
<figure>
 <title><anchor id="jpg-all">Screenshot with Menubar, Toolbar, Buttonbar, and Shadowed Text on Pixmap Background</title>

    <mediaobject>
       <imageobject>
        <imagedata  fileref="&figures;/mgt_pix_show_all150.jpg" format="jpg">
       </imageobject>
       <textobject>
          <phrase>Screenshot 1</phrase>
       </textobject>
    </mediaobject>
 </figure>
</para>
<para>
 Notice there are four <guibutton>Tabs</guibutton> here, with the second 
 one being the current <guibutton>Tab</guibutton>. This one also shows 
 the <guibutton>Tab</guibutton> label and Window title can be the same 
 with some applications (configurable option).
</para>
<literallayout>
<!-- space eater --> 
</literallayout>

<para>
<figure pgwide="1" float="1">
  <title>Screenshot of Edit Commands Window with various custom Commands</title>
    <mediaobject>
       <imageobject>
        <imagedata  fileref="&figures;/mgt_pix_editcmds150.jpg" format="jpg">
       </imageobject>
       <textobject>
          <phrase>Screenshot 2</phrase>
       </textobject>
    </mediaobject>
 </figure>
</para>
<para>
 Note the Class here is specified as <quote>screenshots</quote>, and 
 that Class has one custom start-up <guibutton>Tab</guibutton> called 
 <quote>Home</quote>. The user is in the process of defining a new 
 <guibutton>Tab</guibutton>, that will use <command>ssh</command> to 
 start a remote shell on another host.
</para>
<literallayout>
<!-- space eater --> 
</literallayout>

<para>
<figure pgwide="1" float="1"><title>Screenshot of Keybindings Window with
Default Settings</title>
    <mediaobject>
       <imageobject>
          <imagedata  fileref="&figures;/mgt_pix_keyb151.jpg" format="jpg">
       </imageobject>
       <textobject>
          <phrase>Screenshot 3</phrase>
       </textobject>
    </mediaobject>
 </figure>
</para>
<literallayout>
<!-- space eater --> 
</literallayout>

<para>
<figure pgwide="1" float="1"><title>Screenshot with Toolbar and Buttonbar disabled and with Shadowed Text</title>
    <mediaobject>
       <imageobject>
          <imagedata  fileref="&figures;/mgt_pix_menu_only150.jpg" format="jpg">
       </imageobject>
       <textobject>
          <phrase>Screenshot 4</phrase>
       </textobject>
    </mediaobject>
 </figure>
</para>
<para>
 This also shows how <quote>text shadowing</quote> helps with text against 
 a similarly colored background.

</para>
<literallayout>
<!-- space eater --> 
</literallayout>

<para>
<figure pgwide="1" float="1"><title>Screenshot Showing Horizontal and Vertical Splitting</title>
    <mediaobject>
       <imageobject>
          <imagedata  fileref="&figures;/mgt150.jpg" format="jpg">
       </imageobject>
       <textobject>
          <phrase>Screenshot 5</phrase>
       </textobject>
    </mediaobject>
 </figure>
</para>
<para>
 This shows a total of five terminals opened within the same Window using 
 the <literal>HShell</literal> and <literal>VShell</literal> splitting 
 features.
</para>
<literallayout>
<!-- space eater --> 
</literallayout>

<para>
<figure pgwide="1" float="1"><title>Horizontal Split with a View Terminal</title>
    <mediaobject>
       <imageobject>
          <imagedata  fileref="&figures;/mgt_pix_view150.jpg" format="jpg">
       </imageobject>
       <textobject>
          <phrase>Screenshot 6</phrase>
       </textobject>
    </mediaobject>
 </figure>
</para>
<para>
 This one shows a horizontal split with a regular user shell in the top, 
 and a <quote>View</quote> of <command>tail -f /var/log/messages</command>
 running on another host via <command>ssh</command> in the lower terminal.
 <guibutton>Tabs</guibutton> are on the bottom in this shot.
</para>
<literallayout>
<!-- space eater --> 
</literallayout>

<para>
<figure pgwide="1" float="1"><title>Screenshot Showing Multiple Mailboxes</title>
    <mediaobject>
       <imageobject>
          <imagedata  fileref="&figures;/mgt_pix_mail150.jpg" format="jpg">
       </imageobject> 
       <textobject>
          <phrase>Screenshot 7</phrase>
       </textobject>
    </mediaobject>
 </figure>
</para>
<para>
 There are five <guibutton>Tabs</guibutton> in this shot, four of which are
 different mailboxes. Also, one <guibutton>Tab</guibutton> is just a normal
 shell. Notice two <guibutton>Tabs</guibutton> are <quote>blue</quote>, so
 they are <quote>changed</quote> since last viewed, and presumably 
 have new mail waiting.
</para>
<literallayout>
<!-- space eater --> 
</literallayout>
<para>
<figure pgwide="1" float="1"><title>Screenshot with Most GUI Controls and
Window Decorations Off</title>
    <mediaobject>
       <imageobject>
          <imagedata  fileref="&figures;/mgt_nogui_152.jpg" format="jpg">
       </imageobject> 
       <textobject>
          <phrase>Screenshot 8</phrase>
       </textobject>
    </mediaobject>
 </figure>
</para>
<literallayout>
<!-- space eater --> 
</literallayout>
<para>
 &nbsp;&nbsp;&nbsp;&nbsp;I'll be back!
</para>
<!-- Hal Burgiss May 2002 -->
</appendix>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
<appendix id="appendixc"><title>Appendix: Resource and Performance Issues</title>

<para>
 One thing to keep in mind is that featureful GUI programs like &term; use 
 many underlying system components. Things like excessive memory usage, 
 or a keyboard that does not do what we expect, may have the root cause 
 in the underlying libraries and utilities.
</para>

<para>
 Below are some points that might be useful for troubleshooting or optimizing.
</para>

<!--   ~~~~~       New section      ~~~~~     -->
<simplesect>
<title>Memory Usage</title>
<para>
 You can conserve resources by using the <guimenuitem>New Window</guimenuitem>
 feature from the GUI or command line, or the <option>--use-factory</option>
 command line option, when opening new windows, rather than starting a
 completely new &term; process.
</para>

<para>
 Pixmap and transparent backgrounds will <emphasis>always</emphasis> use more
 memory than a solid background. A solid background should also be faster,
 since there is less going on.
</para>

<para>
 Some versions of <application>XFree</application>, and some GTK themes, may
 not be good about freeing memory, leading to excessive memory usage. Notably,
 <application>XFree 4.1</application> (and 4.0?), are known not to release all
 memory when transparent backgrounds are used. This is not a problem with
 3.3.6, and apparently much improved with 4.2. Some themes may have similar
 problems, or at least aggravate the X memory leak situation. There is nothing
 that &term; can do to lessen this impact. If you experience unusually high
 memory consumption that keeps growing, please try a different GTK theme, and,
 if possible, upgrade to <application>XFree-4.2</application>.
</para>

</simplesect>

<!--  ~  End section  ~  -->


<!--   ~~~~~       New section      ~~~~~     -->
<simplesect>
<title>CPU</title>
<para> 
 &term;'s rich set of features comes with a small price tag. &term; must spend
 more CPU cycles <quote>watching</quote> the terminal buffer (even non-visible
 ones) than other similar applications in order to provide some of these
 features. On modern, faster systems this should not be noticeable in all but
 the most unusual of circumstances. The impact of all this may depend on many
 factors, including your hardware, library versions, and how other system
 resources are being allocated.
</para>
<para>
 Very fast scrolling or exceptionally busy screens may force &term; into
 overdrive. This may be more noticeable on low end hardware or during high
 system load periods. Consider using a non-pixmap, solid background color in
 such situations. This will help quite a bit. Re-nicing the process can make
 a difference too. In fact, you can set the shell that is running in the
 terminal to be re-niced automatically in <guimenuitem>Edit
 Commands</guimenuitem>, and start it automatically when it might be needed.
 Maybe call it <quote>Nice Bash</quote> ;-)
</para>

</simplesect>
</appendix>

<!--  ~  End section  ~  -->


<!--   ~~~~~~~~       New section Header    ~~~~~~~~~     -->
<appendix id="appendixd"><title>Appendix: NEWS and ChangeLog</title>

<para>
 <itemizedlist>
  <listitem>
   <para>
    <filename>NEWS</filename> file with all significant &term; changes and bugfixes is: <ulink
 url="NEWS">here</ulink>.
   </para>
  </listitem>

  <listitem>
   <para>
    The <filename>ChangeLog</filename> with the many gory &term; details of
    changes is: <ulink url="ChangeLog">here</ulink>. 
   </para>
  </listitem>
 </itemizedlist>
</para>

</appendix>


</article>

<!-- ta-da -->


<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
