Git Product home page Git Product logo

compliment's Introduction

Compliment https://travis-ci.org/alexander-yakushev/compliment.svg?branch=master https://coveralls.io/repos/alexander-yakushev/compliment/badge.svg?branch=master http://jarkeeper.com/alexander-yakushev/compliment/status.png

Compliment is a state-of-the-art Clojure completion library. It provides a fast, smart and extensible solution to complete vars, namespaces, class members, local bindings and whatever else custom sources can implement.

Compliment is used as a completion backend in the following editors/IDEs:

Also, I am so glad you came here. You look gorgeous today.

Rationale

I wrote Compliment specifically for you because you are amazing and I believe you deserve a matching completion lib. Here are the features it boasts:

  • Speed. Your time is too precious to wait for completion to happen. Compliment is designed to be fast and is carefully benchmarked to make sure no sudden performance drops appear. It allows Compliment to work effectively even on Android.
  • Smart completion. Such a smart person like you is entitled to completion being smart as well. Default Compliment sources use various techniques to give more meaningful completion depending on the context, and allow some fuzziness in prefix.
  • Extensibility. Your insatiable passion for exploration won’t be satisfied by a set in stone completion list. For this reason Compliment allows every library developer to write custom sources, so later other users of the library will have better experience utilizing it.

Installation

If you use Nightcode or vim-fireplace then you don’t have to install anything at all — Compliment will be already there for you. In case you are Emacs+CIDER user there are two completion frontends to choose from:

If you need Compliment embedded directly into your program then add this to the :dependencies:

https://clojars.org/compliment/latest-version.svg

Examples

Here you can find examples of different completion scenarios Compliment supports so far.

For developers

See the test files to get an idea how public API and completion sources work.

To understand what is a context and how it works see Context wiki page.

How to write your own sources is explained on Custom sources page.

Changelog

You can view the significant changes on the Releases page.

License

Copyright © 2013-2015 Alexander Yakushev. Distributed under the Eclipse Public License, the same as Clojure. See LICENSE.

compliment's People

Contributors

aamedina avatar alexander-yakushev avatar deraen avatar raxod502 avatar skrat avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.