# terminalkeyboardcons.pod
#
# Copyright (c) 2010 Accenture. All rights reserved.
# This component and the accompanying materials are made available
# under the terms of the "Eclipse Public License v1.0"
# which accompanies this distribution, and is available
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
#
# Initial Contributors:
# Accenture - Initial contribution
#

__END__

=head1 terminalkeyboardcons

=head2 Introduction

On platforms that support the Terminal Keyboard and Trace Core, this console allows the Carbide Terminal Keyboard plugin to be used directly with fshell via the tracecore connection, even in gui environments when the normal eshell terminalkeyboard plugin won't work. See the L<main consoles page|consoles> for a comparison of the various consoles.

=head2 Usage

There are no major configuration options to use terminalkeyboardcons. If it is supported on your platform, you just need to launch:

    fshell --console terminalkeyboardcons

And start the Carbide Terminal Keyboard plugin. Assuming tracing is set up correctly fshell should sucessfully piggyback the tracecore connection. You shouldn't specify any of the terminalkeyboard rombuild macros, they may interfere with fshell's implementation.

You can specify the size of the terminal keyboard window using the C<--console-size> option (the default size is 80x24). There is a debug option which prints additional logging, although this won't be of interest to anyone except the fshell maintainers.

    fshell --console terminalkeyboardcons [--console-size WIDTH,HEIGHT] [--console-title debug]

=head2 Custom escape sequences

The Carbide Terminal Keyboard (at the time of writing) does not pass through certain keypresses such as control keys, which limits the usefulness of the shell. Therefore this console supports a set of custom escape sequences using the backtick C<`> key as a modifier. The sequence C<backtick-space> means press and release the backtick key, then press and release the space bar.

=over 5

=item C<backtick-backtick>

The escape key.

=item C<backtick-1>

Tab.

=item C<backtick-uparrow>

Up arrow (normally pressing the up cursor key just sends a numeric '2' to fshell, so technically this sequence is C<backtick-2>.)

=item C<backtick-downarrow>, C<backtick-leftarrow>, C<backtick-rightarrow>

Down, left, right.

=item C<backtick-space>

The literal backtick character C<`>.

=item C<backtick-a> through C<backtick-z>

The control keys CTRL-A through CTRL-Z.

=back

=head1 Copyright

Copyright (c) 2008-2010 Accenture. All rights reserved.

=cut
