Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/chjj/pty.js

Bindings to forkpty(3) for node.js.
https://github.com/chjj/pty.js

Last synced: 12 days ago
JSON representation

Bindings to forkpty(3) for node.js.

Awesome Lists containing this project

README

        

# pty.js

`forkpty(3)` bindings for node.js. This allows you to fork processes with pseudo
terminal file descriptors. It returns a terminal object which allows reads
and writes.

This is useful for:

- Writing a terminal emulator.
- Getting certain programs to *think* you're a terminal. This is useful if
you need a program to send you control sequences.

## Example Usage

``` js
var pty = require('pty.js');

var term = pty.spawn('bash', [], {
name: 'xterm-color',
cols: 80,
rows: 30,
cwd: process.env.HOME,
env: process.env
});

term.on('data', function(data) {
console.log(data);
});

term.write('ls\r');
term.resize(100, 40);
term.write('ls /\r');

console.log(term.process);
```

## Todo

- Add tcsetattr(3), tcgetattr(3).
- Add a way of determining the current foreground job for platforms other
than Linux and OSX/Darwin.

## Contribution and License Agreement

If you contribute code to this project, you are implicitly allowing your code
to be distributed under the MIT license. You are also implicitly verifying that
all code is your original work. ``

## License

Copyright (c) 2012-2015, Christopher Jeffrey (MIT License).