# hipster

> Okay, so today I wrote a text editor in node.js and named it "hipster". Because I am an asshole. (and no one had already used the name for something more stupid)

Latest version **1.0.1** (published 2019-10-05) · MIT license · 0 weekly downloads

## Install

```sh
npm install hipster
pnpm add hipster
yarn add hipster
bun add hipster
```

Provides the commands `hip`, `hipster`.

## Health

**Score 5/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: insecure dependencies; abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.1 |
| Published | 2019-10-05 |
| First published | 2012-08-09 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 7 |
| Unpacked size | 46.1 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 74 |
| Author | 'Dominic Tarr' |
| Maintainers | dominictarr |

## Links

- npm: https://www.npmjs.com/package/hipster
- Repository: https://github.com/dominictarr/hipster
- Issues: https://github.com/dominictarr/hipster/issues
- npm.io page: https://npm.io/package/hipster

## Dependencies (7)

- [rc](https://npm.io/package/rc.md) ~0.3.2
- [charm](https://npm.io/package/charm.md) 0.2.0
- [colors](https://npm.io/package/colors.md) ~0.6.0-1
- [keypress](https://npm.io/package/keypress.md) 0.2.1
- [ansi-recover](https://npm.io/package/ansi-recover.md) git://github.com/dominictarr/ansi-recover.git#27e7851a70a2dcba075e10a3c0ac43f74d9a626d
- [event-stream](https://npm.io/package/event-stream.md) ~3.0.1
- [insert-queue](https://npm.io/package/insert-queue.md) 0.0.3

## Recent versions

- 1.0.1 (latest) — 2019-10-05
- 1.0.0 — 2019-06-06
- 0.19.0 — 2016-07-06
- 0.18.0 — 2016-06-08
- 0.17.4 — 2015-06-15
- 0.17.3 — 2014-04-21
- 0.17.2 — 2014-04-08
- 0.17.1 — 2014-02-15
- 0.17.0 — 2014-02-13
- 0.16.0 — 2014-01-29
- 0.15.7 — 2013-12-18
- 0.15.6 — 2013-12-10
- 0.15.5 — 2013-12-10
- 0.15.3 — 2013-12-09
- 0.15.2 — 2013-12-09
- … 37 more at https://npm.io/package/hipster/versions

## README

# Hipster

Okay, so today I wrote a text editor in node.js and named it "hipster". 
Because I am an asshole. 
(and no one had already used the name for something more stupid)

I had to cut some corners to get it done in a single day,  
But it still came out pretty good,  
I am editing this README with it right now.  

## Features

Hipster has modern controls. no modes or silly stuff like that.

* Selection of text (Shift + Arrows)
* Copy/Paste        (`sudo apt-get install xclip`, on OSX, make a pull request)
* Typing            (like, duh)

## Unfeatures

Hipster ain't got no:

* Multiple Buffers  (use screen, [tmux interferes with controls too much])
* Un Do             (use git)
* Friendly Warnings (deal with it)

Will be easy to implement these so-called "features" as plugins.

## Usage

```
npm install hipster -g
```

Then
```
hip filename [options]

--margin     # Set to N >= 2 for line numbers.
--page       # PageUp/Down jump size.
--version|-v # print version and exit
--weird      # enable weird backspace.
             # (if it deletes a whole word when you press backspace, enable this)
```

`hipster` uses [rc](https://npm.im/rc) for unmanaging configuration. 
you should too.

## Controls

 * Arrows         - Slow Movement.
 * Ctrl-Arrows    - Fast Movement.
 * Shift-Movement - Select text
 * Ctrl-F         - Search forwards for text
 * Ctrl-C         - Copy
 * Ctrl-X         - Cut
 * Ctrl-P,V       - Paste
 * Tab            - Indent   (to selected lines)
 * Shift-Tab      - Unindent (to selected lines)
 * Ctrl-R         - Redraw Screen.
 * Ctrl-S         - Save.
 * Ctrl-Q         - Quit.

## Preferred Terminals

Some terminals interfere with Modifier keys. I've found the XTerm works best. 
If you use fancy terminals that have tabs and stuff then you may have trouble
selecting text with key combinations like `Ctrl-Shift-Up/Down`.

## See Also

If this editor is not hip enough for you, you may wish to consider 
[EasyWriter](http://www.webcrunchers.com/stories/easywriter.html)

## Aknowledgements

This module depends on [TooTallNate/keypress](https://github.com/tootallnate/keypress),
[substack/node-charm](https://github.com/substack/node-charm) and 
[Marak/colors.js](https://github.com/Marak/colors.js)

But the most important thing is the playful oneupsmanship that exists in the node
community regarding ansi/terminal art. Without that I would probably not have attempted this.

You know who you are!

## Known Issues

Doesn't wrap lines or anything yet.

## License

MIT

---
_Source: https://npm.io/package/hipster · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
