term::ansi::ctrl::unix - Terminal control

[ Tcllib Home | Main Table Of Contents | Table Of Contents | Keyword Index | Categories | Modules | Applications ]

# term::ansi::ctrl::unix(n) 0.1.1 tcllib "Terminal control"

## Name

term::ansi::ctrl::unix - Control operations and queries

## Synopsis

- package require Tcl 8.4
- package require term::ansi::ctrl::unix ?0.1.1?

- ::term::ansi::ctrl::unix::import ?ns? ?arg...?
- ::term::ansi::ctrl::unix::raw
- ::term::ansi::ctrl::unix::cooked
- ::term::ansi::ctrl::unix::columns
- ::term::ansi::ctrl::unix::rows

## Description

WARNING: This package is unix-specific and depends on the availability of two unix system commands for terminal control, i.e. stty and tput, both of which have to be found in the $PATH. If any of these two commands is missing the loading of the package will fail.

The package provides commands to switch the standard input of the current process between raw and cooked input modes, and to query the size of terminals, i.e. the available number of columns and lines.

## API

### Introspection

::term::ansi::ctrl::unix::import ?ns? ?arg...?

  This command imports some or all attribute commands into the namespace ns. This is by default the namespace ctrl. Note that this is relative namespace name, placing the imported command into a child of the current namespace. By default all commands are imported, this can howver be restricted by listing the names of the wanted commands after the namespace argument.

### Operations

::term::ansi::ctrl::unix::raw

  This command switches the standard input of the current process to raw input mode. This means that from then on all characters typed by the user are immediately reported to the application instead of waiting in the OS buffer until the Enter/Return key is received.

::term::ansi::ctrl::unix::cooked

  This command switches the standard input of the current process to cooked input mode. This means that from then on all characters typed by the user are kept in OS buffers for editing until the Enter/Return key is received.

::term::ansi::ctrl::unix::columns

  This command queries the terminal connected to the standard input for the number of columns available for display.

::term::ansi::ctrl::unix::rows

  This command queries the terminal connected to the standard input for the number of rows (aka lines) available for display.

## Bugs, Ideas, Feedback

This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category term of the Tcllib Trackers. Please also report any ideas for enhancements you may have for either package and/or documentation.

When proposing code changes, please provide unified diffs, i.e the output of diff -u.

Note further that attachments are strongly preferred over inlined patches. Attachments can be made by going to the Edit form of the ticket immediately after its creation, and then using the left-most button in the secondary navigation bar.

## Keywords

ansi, columns, control, cooked, input mode, lines, raw, rows, terminal

## Category

Terminal control

## Copyright

Copyright © 2006-2011 Andreas Kupries <andreas_kupries@users.sourceforge.net>