term-screen

Version, currently 1.0.04 versions

github.com/crystal-term/screen

Terminal screen size detection

19 stars
3 dependents
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  term-screen:
    github: crystal-term/screen
    version: ~> 1.0.0

Then run:

shards install

shard.yml

Crystal
>= 1.0.0
License
MIT
Author
Chris Watson <cawatson1993@gmail.com>

Dependencies

Development Dependencies

  • spectator*gitlab: arctic-fox/spectatordev

README

<div align="center">
  <img src="./assets/term-logo.png" alt="term logo">
</div>

# Term::Screen

![spec status](https://github.com/crystal-term/screen/workflows/specs/badge.svg)

> Terminal screen size detection which works on Linux, OS X and Windows/Cygwin platforms (or will once Windows is supported by Crystal)

**Term::Screen** provides independent terminal screen size detection component for crystal-term.

## Installation

1. Add the dependency to your `shard.yml`:

   ```yaml
   dependencies:
     term-screen:
       github: crystal-term/screen
   ```

2. Run `shards install`

## Usage

```crystal
require "term-screen"
```

**Term::Screen** allows you to detect terminal screen size by calling size method which returns {height, width} tuple.

```crystal
Term::Screen.size     # => {51, 280}
```

To read terminal width do:

```crystal
Term::Screen.width    # => 280
Term::Screen.columns  # => 280
Term::Screen.cols     # => 280
```

Similarly, to read terminal height do:

```crystal
Term::Screen.height   # => 51
Term::Screen.rows     # => 51
Term::Screen.lines    # => 51
```

## Contributing

1. Fork it (<https://github.com/crystal-term/screen/fork>)
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create a new Pull Request

## Contributors

- [Chris Watson](https://github.com/watzon) - creator and maintainer