Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/anttih/psc-pane

Auto reloading PureScript compiler
https://github.com/anttih/psc-pane

Last synced: 13 days ago
JSON representation

Auto reloading PureScript compiler

Awesome Lists containing this project

README

        

# psc-pane

[![npm version](https://badge.fury.io/js/psc-pane.svg)](https://badge.fury.io/js/psc-pane)

Auto reloading compiler for PureScript inspired by
[ghcid](https://github.com/ndmitchell/ghcid).

`psc-pane` helps you get quick feedback on your PureScript code by watching
your source files for changes. It will

1. try to first compile the file that changed with psc-ide and show the first
error if any. If there are no errors it will
2. run a full build using `psc` and show the first error if any. If there are
no errors it will then
3. (optionally) run your test suite.

`psc-pane` is designed to be run in a terminal multiplexer like tmux side-by-side
with your editor, or in a normal terminal window. You can resize the terminal
window and the output is reformatted on the fly to fit the new height of the
window.

![screencast](http://anttih.github.io/psc-pane/psc-pane.gif)

### Installation

```
npm install psc-pane -g
```

### Usage

If you have a [pulp](https://github.com/bodil/pulp)-style project directory
structure you can run `psc-pane` with no arguments

psc-pane

This will compile your project with `psc` and then start listening for changes
to files in `src/`. It will start a `psc-ide-server` for you in some port
between 4242-4245 and compile any file you save with psc-ide. If you change a
.js file then `psc` is used to compile the whole project.

By default `psc-pane` assumes you have installed your dependencies with bower
and uses `bower_components` as the dependency path. You can specify a different
directory with `--dependency-path`.

psc-pane --dependency-path lib

You can change the source directory (`src` by default) with `--src-path`.

psc-pane --src-path sources

For the full list of options see `--help`.

### Single-module mode

By default `psc-pane` does a full rebuild of your project after psc-ide
compiles the most recently changed file successfully. You can turn this off and
only rebuild one module at a time with psc-ide using `--norebuild` (`-m`).

### Running tests

`psc-pane` won't run any tests unless you use the `-t` (`--test`) flag. When
`-t` is given the tests will be run after every successful rebuild. The default
location of test source files is `test`, you can change it with `--test-path`.
This path is watched for changes in addition to the src path (`--src-path`)
when `-t` is given.

By default the test suite is run by calling the `main` function from the module
`Test.Main`. You can change the module name with `--test-main`. If the test
suite exits with a non-zero exit code the output from stderr (or stdout if
empty) will be displayed.

### Turning off colors

You can turn off colors with `--nocolor`.