summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/term-size/readme.md
blob: dd642cadc20597578279db0f3a36e4e9e8d46134 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# term-size [![Build Status: Linux & macOS](https://travis-ci.org/sindresorhus/term-size.svg?branch=master)](https://travis-ci.org/sindresorhus/term-size) [![Build Status: Windows](https://ci.appveyor.com/api/projects/status/c3tydg6uedsk0bob/branch/master?svg=true)](https://ci.appveyor.com/project/sindresorhus/term-size/branch/master)

> Reliably get the terminal window size

Because [`process.stdout.columns`](https://nodejs.org/api/tty.html#tty_writestream_columns) doesn't exist when run [non-interactively](http://www.tldp.org/LDP/abs/html/intandnonint.html), for example, in a child process or when piped. This module even works when all the TTY file descriptors are redirected!

Confirmed working on macOS, Linux, and Windows.


## Install

```
$ npm install --save term-size
```


## Usage

```js
const termSize = require('term-size');

termSize();
//=> {columns: 143, rows: 24}
```


## API

### termSize()

Returns an `Object` with `columns` and `rows` properties.


## Related

- [term-size-cli](https://github.com/sindresorhus/term-size-cli) - CLI for this module


## License

MIT © [Sindre Sorhus](https://sindresorhus.com)