Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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.
- Host: GitHub
- URL: https://github.com/chjj/pty.js
- Owner: chjj
- License: mit
- Created: 2012-02-21T20:32:10.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2019-04-30T00:01:55.000Z (over 5 years ago)
- Last Synced: 2024-10-20T01:14:52.052Z (23 days ago)
- Language: C++
- Homepage:
- Size: 3.98 MB
- Stars: 856
- Watchers: 35
- Forks: 212
- Open Issues: 88
-
Metadata Files:
- Readme: README.md
- License: LICENSE
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).