ace 0.3.6+3.8.2014

  • Installing
  • Versions
  • --


Dart language bindings for Ace.

Build Status | Dart API | JavaScript API


This package maintains a copy of the latest ace-builds as described in this README and governed by its own LICENSE.

Ace.dart uses the MIT license as described in the LICENSE file, and follows semantic versioning.

Ace.js uses a BSD license as described in its own LICENSE file.

Ace.dart Changes


  • Added the commands getter and the execCommand method to Editor.
  • Added the Command and CommandManager classes.
  • Updated to ace-builds version 03.08.2014.


  • Fixed a bug in the Editor.onPaste event stream that arrived with a change in ace-builds 02.28.2014.
  • Added the paste method to Editor.
  • Updated API documentation generation to use the new docgen tool.
  • Added .as, .ini, .pl, .pm, and .sass to the extension map used by the new Mode.forFile factory.


  • Updated to ace-builds version 02.28.2014.
  • Added the fadeFoldWidgets getter / setter to Editor.
  • Added the getLineRange method to Selection.


  • Changed the data carried by a number of 'empty' streams from this to null for performance reasons.


  • Added the wrapLimit setter to EditSession.
  • Replaced the EditSession.wrapLimitRange getter with the getWrapLimitRange method.


  • Added an OptionsProvider implementation to the EditSession.
  • Fixed some bugs in Mode proxy objects.


  • Decoupled the Implementation from the ace library by adding an ace.proxy library; the library user is responsible for setting the implementation variable prior to making any other calls to the ace library. For example:
import 'package:ace/ace.dart' as ace;
import 'package:ace/proxy.dart';

main() {
  ace.implementation = ACE_PROXY_IMPLEMENTATION;


  • Replaced the EditSession.breakpoints getter with the getBreakpoints method.
  • Split EditSession.annotations getter/setter into the getAnnotations and setAnnotations methods; this matches ace.js and helps to clarify their separate behavior.
  • Added the static Mode.extensionMap getter; the user may modify this map to configure the new Mode.forFile factory.
  • Added the new Mode.named factory, name getter, and enumeration constants to Mode.
  • Added gotoLine and the onChangeSelection event stream to Editor.
  • Added the Marker class and expose the onChangeBackMarker, onChangeFrontMarker, addMarker, getMarkers and removeMarker members on the EditSession class.
  • Added the Fold, FoldLine, Placeholder and RangeList classes.
  • Added the Folding abstract class and have EditSession implement it.
  • Added the onChangeFold event stream to EditSession.


  • Updated to ace-builds version 01.08.2014.


  • Added the UndoManagerBase class and implemented the EditSession.undoManager setter; the argument to this setter must be an object derived from UndoManagerBase.
  • Optimized some list and map conversions on the dart:js boundary.
  • Added the Annotation class and expose the onChangeAnnotation, annotations, and clearAnnotations members on the EditSession class.
  • Added a new example/annotations.


  • Added containerElement and mouseEventTarget getters to the VirtualRenderer.
  • Added .lua, .hs, .hx, .scala, and .svg to the extension map used by the new Mode.forFile factory.


  • Updated to ace-builds version 12.02.2013.
  • Added showGutter, printMarginColumn, and an OptionsProvider implementation to the VirtualRenderer.


  • Added the KeyBinding and KeyboardHandler abstract classes and expose the Editor.keyBinding getter and the Editor.keyboardHandler getter / setter.


  • Added a new example/autocomplete.
  • Added the require top-level function.
  • Added the OptionsProvider abstract class and have Editor implement it.


  • Updated pubspec for Dart 1.0 release as requested.


  • Updated to ace-builds version 10.28.2013.
  • Updated to SDK 0.8.10_r29803.
  • Added documentation and test coverage to a number of public methods; please consult the commit history for details.


  • Updated to ace-builds version 10.21.2013.
  • Fixed a couple of bugs from the move to dart:js.


  • Updated to SDK 0.8.5_r28990.
  • Removed dependency on js package and moved code to use the dart:js library instead.


  • Added several public methods to the Range class with documentation and test coverage.
  • Changed the noClip parameter of Anchor.setPosition to a named optional parameter clip which defaults to true.
  • Changed the dontSelect parameter of UndoManager.undo and redo to a named optional parameter select which defaults to true.
  • Changed the cursorPos parameter of Editor.setValue to an optional parameter cursorPosition which defaults to 0 (select all) and documented the method.
  • Changed the times parameter of the Editor methods navigateDown, navigateLeft, navigateRight, and navigateUp to be optional with default value of 1.


  • Pub doesn't seem to like a 0 in the version metadata just about anywhere. This is really a pub bug but I'm going to drop the 0 to work around the issue.


  • Updated to ace-builds version 10.07.2013.
  • Changed the text parameter of the Document constructor from an optional to a named optional.


  • Updated to SDK 0.7.6_r28108.
  • Added documentation and test coverage to a number of public methods; please consult the commit history for details.
  • Fixed Editor.onChangeSession stream type to EditSessionChangeEvent thanks to a bug fix in the js-interop package.


  • Updated to SDK 0.7.5_r27776.
  • Added documentation and test coverage to a number of public methods; please consult the commit history for details.


  • Removed leading 0 from the version metadata string as it was being stripped when publishing and that was causing issues.
  • Added LICENSE and README for ace.js to lib/src/js.


  • Initial version.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  ace: ^0.3.6+3.8.2014

2. Install it

You can install packages from the command line:

with pub:

$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:ace/ace.dart';
Version Uploaded Documentation Archive
0.7.2 May 21, 2016 Go to the documentation of ace 0.7.2 Download ace 0.7.2 archive
0.7.1+3.4.15 May 20, 2016 Go to the documentation of ace 0.7.1+3.4.15 Download ace 0.7.1+3.4.15 archive
0.7.0+3.4.15 Nov 24, 2015 Go to the documentation of ace 0.7.0+3.4.15 Download ace 0.7.0+3.4.15 archive
0.6.2+3.4.15 Apr 4, 2015 Go to the documentation of ace 0.6.2+3.4.15 Download ace 0.6.2+3.4.15 archive
0.6.1+3.3.15 Mar 7, 2015 Go to the documentation of ace 0.6.1+3.3.15 Download ace 0.6.1+3.3.15 archive
0.6.0+24.2.15 Feb 25, 2015 Go to the documentation of ace 0.6.0+24.2.15 Download ace 0.6.0+24.2.15 archive
0.5.10+20.12.14 Dec 21, 2014 Go to the documentation of ace 0.5.10+20.12.14 Download ace 0.5.10+20.12.14 archive
0.5.9+20.12.14 Dec 20, 2014 Go to the documentation of ace 0.5.9+20.12.14 Download ace 0.5.9+20.12.14 archive
0.5.8+8.11.14 Nov 9, 2014 Go to the documentation of ace 0.5.8+8.11.14 Download ace 0.5.8+8.11.14 archive
0.5.7+9.10.2014 Oct 11, 2014 Go to the documentation of ace 0.5.7+9.10.2014 Download ace 0.5.7+9.10.2014 archive

All 46 versions...

Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

This package version is not analyzed, because it is more than two years old. Check the latest stable version for its analysis.


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.0.0 <2.0.0