Home

Awesome

Ace

CI Release Pursuit Maintainer: garyb

PureScript bindings for the Ace code editor.

Installation

Install ace with Spago:

spago install ace

You may either include a CDN link in your project's index.html, or install the ace-builds npm dependency and let a bundler package it in your app. See Ace's embedding guide for more information.

Here's a CDN example:

<!DOCTYPE html>
<html>

<head>
  <meta charset="UTF-8">
  <title>Ace Demo</title>
  <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/ace/1.4.12/ace.min.js" charset="utf-8"></script>
</head>

<body>
  <script src="./index.js"></script>
</body>

</html>

To install via NPM instead:

npm install ace-builds

Note that you'll probably need the src-noconflict path when bundling with Common JS modules (PureScript's current output, until we switch to ES Modules in ~0.15.0). For example:

<script src="../node_modules/ace-builds/src-noconflict/ace.js"></script>

Quick start

The quick start hasn't been written yet (contributions are welcome!). The quick start covers a common, minimal use case for the library, whereas longer examples and tutorials are kept in the docs directory.

Documentation

ace documentation is stored in a few places:

  1. Module documentation is published on Pursuit.
  2. Written documentation is kept in the docs directory.
  3. The examples directory demonstrates how to embed the Ace editor and configure it via the PureScript API.

If you get stuck, there are several ways to get help:

Contributing

You can contribute to ace in several ways:

  1. If you encounter a problem or have a question, please open an issue. We'll do our best to work with you to resolve or answer it.

  2. If you would like to contribute code, tests, or documentation, please read the contributor guide. It's a short, helpful introduction to contributing to this library, including development instructions.

  3. If you have written a library, tutorial, guide, or other resource based on this package, please share it on the PureScript Discourse! Writing libraries and learning resources are a great way to help this library succeed.