packages feed

rasa-0.1.10: rasa.cabal

name: rasa
version: 0.1.10
cabal-version: >=1.10
build-type: Simple
license: GPL-3
license-file: LICENSE
copyright: 2016 Chris Penner
maintainer: christopher.penner@gmail.com
homepage: https://github.com/ChrisPenner/rasa#readme
synopsis: A modular text editor
description:
    A modular text editor
    This is only a snippet, see the project's <https://github.com/ChrisPenner/rasa README>.
    .
    Rasa is a text editor project with a few interesting goals. For better or worse it attempts
    to be as modular as possible. This means that most functionality which would typically be considered to be 'core' in other editors
    is implemented as extensions in Rasa.
    This approach comes with its own share of pros and cons, for instance:
    .
    /Pros/
    .
    * Implementing most core functionality as extensions ensures a powerful and elegant extension interface.
    .
    * Flexibility; don't like the default cursor implementation? Write your own!
    .
    * Adaptability; the core of Rasa is miniscule, you can mix and match extensions to build any editor you want.
    .
    /Cons/
    .
    * Module cross-dependencies makes the community infrastructure more fragile; We'll likely have to develop a solution to this as a community as time goes on.
    .
    * Fragmentation; Not having a single implementation for a given feature means extensions that depend on a feature have to pick a specific implementation to augment. Over time data-structures and types will be standardized into Rasa's core to help alleviate this.
    .
    While highly experimental, I've found the current API to be quite expressive and adaptable;
    for instance I was able to implement the notion of multiple cursors using the extension API in less than a day. I hope to keep the learning curve low as development continues.
    .
    /Getting Started/
    .
    First clone the <https://github.com/ChrisPenner/rasa Github repo>
    and try running the example-config included there.
    Once you get it running (see the <https://github.com/ChrisPenner/rasa/blob/master/README.md README>) then you
    can customize your keymap to add a few mappings you like.
    Then I'd check out the
    <https://github.com/ChrisPenner/rasa/blob/master/docs/Building-An-Extension.md Building your own extensions guide>.
    It goes in depth into everything you'd want to know!
    .
    If you have any issues (and I'm sure there'll be a few; it's a new project!) please report them <https://github.com/ChrisPenner/rasa/issues here> and we'll talk about it!
category: Text Editor, Executable
author: Chris Penner
extra-source-files:
    README.md

source-repository head
    type: git
    location: https://github.com/ChrisPenner/rasa

library
    exposed-modules:
        Rasa
        Rasa.Ext
        Rasa.Testing
        Rasa.Internal.ActionMonads
        Rasa.Internal.Action
        Rasa.Internal.Actions
        Rasa.Internal.BufAction
        Rasa.Internal.BufActions
        Rasa.Internal.Buffer
        Rasa.Internal.Editor
        Rasa.Internal.Events
        Rasa.Internal.Extensions
        Rasa.Internal.Interpreters
        Rasa.Internal.Listeners
        Rasa.Internal.Range
        Rasa.Internal.Styles
        Rasa.Internal.Text
        Rasa.Internal.Utility
    build-depends:
        base >=4.8 && <5,
        async >=2.1.1 && <2.2,
        bifunctors >=5.4.1 && <5.5,
        profunctors ==5.2.*,
        containers >=0.5.7.1 && <0.6,
        data-default >=0.7.1.1 && <0.8,
        free >=4.12.4 && <4.13,
        lens ==4.14.*,
        mtl >=2.2.1 && <2.3,
        text >=1.2.2.1 && <1.3,
        text-lens >=0.1.1 && <0.2,
        transformers >=0.5.2.0 && <0.6,
        yi-rope >=0.7.0.2 && <0.8,
        pipes >=4.1.9 && <4.2,
        pipes-concurrency >=2.0.6 && <2.1,
        pipes-parse >=3.0.7 && <3.1,
        hspec >=2.2.4 && <2.3
    default-language: Haskell2010
    hs-source-dirs: src
    ghc-options: -Wall

test-suite rasa-test
    type: exitcode-stdio-1.0
    main-is: Spec.hs
    build-depends:
        base >=4.9.0.0 && <4.10,
        rasa >=0.1.10 && <0.2,
        hspec >=2.2.4 && <2.3,
        lens ==4.14.*,
        yi-rope >=0.7.0.2 && <0.8,
        text >=1.2.2.1 && <1.3,
        quickcheck-instances >=0.3.12 && <0.4,
        QuickCheck >=2.8.2 && <2.9
    default-language: Haskell2010
    default-extensions: OverloadedStrings
    hs-source-dirs: test
    other-modules:
        ArbitraryInstances
        RasaSpec
        Rasa.Internal.ActionSpec
        Rasa.Internal.ActionsSpec
        Rasa.Internal.AsyncSpec
        Rasa.Internal.BufActionSpec
        Rasa.Internal.BufActionsSpec
        Rasa.Internal.BufferSpec
        Rasa.Internal.EditorSpec
        Rasa.Internal.EventsSpec
        Rasa.Internal.ExtensionsSpec
        Rasa.Internal.ListenersSpec
        Rasa.Internal.RangeSpec
        Rasa.Internal.TextSpec
    ghc-options: -threaded -rtsopts -with-rtsopts=-N -fno-warn-orphans