<chapter id="gtpshell">
<title>GTP Shell</title>

<para>
The GTP shell is a window that allows to trace the
stream of GTP commands and responses, which are sent to and
received from the Go program.
Also, it allows to enter any command and send it to the Go program.
</para>
<para><!-- Empty paragraph to enforce space in JEditorPane --></para>
<warning>
<title>Commands Altering the Board State</title>
<para>
It is not advisable to send GTP commands that alter the board state
directly to the Go program, since it will cause
the graphical board to be out of sync with the Go program.
For standard GTP commands that alter the board state, GoGui will
show a warning.
</para>
</warning>
<para><!-- Empty paragraph to enforce space in JEditorPane --></para>

<section>
<title>Saving the History</title>
<para>
From the menu of the GTP shell window, it is possible to save
the GTP commands and responses, or only the commands to a file.
Note that the history of the GTP streams will be truncated,
depending on the values of <userinput>gtpshell-history-min</userinput>
and <userinput>gtpshell-history-max</userinput> in the configuration
file <filename>~/.gogui/config</filename>.
</para>
<para><!-- Empty paragraph to enforce space in JEditorPane --></para>
</section>

<section>
<title>Special Keys</title>
<variablelist>
<varlistentry>
<term><keycap>Tab</keycap></term>
<listitem>
<simpara>
Complete command line as far as possible from the history and from
the commands supported by the program.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><keycap>Down</keycap></term>
<listitem>
<simpara>
Pop up window with the command history.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><keycombo><keycap>Shift</keycap><keycap>Up</keycap></keycombo></term>
<listitem>
<simpara>
Scroll up.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><keycombo><keycap>Shift</keycap><keycap>Down</keycap></keycombo></term>
<listitem>
<simpara>
Scroll down.
</simpara>
</listitem>
</varlistentry>
</variablelist>

<para>
<!-- Empty paragraph to enforce some space in JEditorPane (Java 1.5.0) -->
</para>

</section>
    
</chapter>
