Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
511 lines (460 sloc) 13.5 KB
name: yi
version: 0.6.2.5
category: Development, Editor
synopsis: The Haskell-Scriptable Editor
description:
Yi is a text editor written in Haskell and extensible in Haskell. The goal of the Yi project is
to provide a flexible, powerful, and correct editor for haskell hacking.
license: GPL
license-file: LICENSE
author: AUTHORS
maintainer: yi-devel@googlegroups.com
homepage: http://haskell.org/haskellwiki/Yi
bug-reports: http://code.google.com/p/yi-editor/issues/list
Cabal-Version: >= 1.6
tested-with: GHC==7.0.1
build-type: Simple
data-files:
art/yi+lambda-fat.pdf
art/yi+lambda-fat.32.png
art/dependencies.png
art/plain-folder.png
art/hs-source-folder.png
art/exposed-module.png
art/hidden-module.png
art/exposed-file-module.png
art/hidden-file-module.png
art/package.png
art/project.png
art/c-source.png
art/h-source.png
art/text-file.png
art/license-file.png
art/setup-script.png
art/setup-script.png
examples/yi.hs
examples/yi-vim.hs
examples/yi-cua.hs
examples/yi-simple.hs
extra-source-files: src/Yi/Lexer/common.hsinc
flag scion
Default: False
Description: Use the scion library to provide extra commands that interface with GHC (experimental)
flag ghcAPI
Description: Enable linking with GHC API for advanced features.
Default: False
-- Can be useful to disable; ghc package is difficult to rebuild;
-- * normally not available for profiling.
-- * links against old/new version of bytestring
-- * links against old version of Cabal
-- ...
flag vty
Description: Provide Vty UI
flag vte
Description: Provide Vte UI
flag pango
Description: Provide Pango UI
flag cocoa
Description: Provide experimental Cocoa UI
flag gnome
Default: False
Description: Enable GNOME integration
flag hacking
Default: False
Description:
Hacking mode:
* Create HackerMain.hs by copying your ~/.yi/yi.hs
* Skip library compilation
* You can run yi in-place with dist/build/yi/yi
flag testing
Description: bake-in the self-checks
library
hs-source-dirs: src
if flag(hacking)
buildable: False
else
exposed-modules:
Yi
Yi.Boot
Yi.Buffer
Yi.Buffer.Basic
Yi.Buffer.HighLevel
Yi.Buffer.Indent
Yi.Buffer.Normal
Yi.Buffer.Misc
Yi.Buffer.Region
Yi.Buffer.Undo
Yi.Command
Yi.Completion
Yi.Config
Yi.Config.Default
Yi.Config.Misc
Yi.Core
Yi.Debug
Yi.Dired
Yi.Dynamic
Yi.Editor
Yi.Eval
Yi.Event
Yi.File
Yi.History
Yi.Hoogle
Yi.IReader
Yi.IncrementalParse
Yi.Interact
Yi.Keymap
Yi.Keymap.Completion
Yi.Keymap.Cua
Yi.Keymap.Emacs
Yi.Keymap.Emacs.KillRing
Yi.Keymap.Emacs.Utils
Yi.Keymap.Keys
Yi.Keymap.Vim
Yi.KillRing
Yi.Lexer.Abella
Yi.Lexer.Alex
Yi.Lexer.Cabal
Yi.Lexer.Compilation
Yi.Lexer.C
Yi.Lexer.ObjectiveC
Yi.Lexer.Cplusplus
Yi.Lexer.Haskell
Yi.Lexer.JavaScript
Yi.Lexer.Latex
Yi.Lexer.LiterateHaskell
Yi.Lexer.GNUMake
Yi.Lexer.OCaml
Yi.Lexer.Ott
Yi.Lexer.Perl
Yi.Lexer.Python
Yi.Lexer.Srmc
Yi.Lexer.SVNCommit
Yi.Lexer.Whitespace
Yi.Main
Yi.MiniBuffer
Yi.Misc
Yi.Mode.Abella
Yi.Mode.Buffers
Yi.Mode.Compilation
Yi.Mode.Haskell
Yi.Mode.Haskell.Dollarify
Yi.Mode.IReader
Yi.Mode.Interactive
Yi.Mode.JavaScript
Yi.Mode.Latex
Yi.Modes
Yi.Monad
Yi.Prelude
Yi.Process
Yi.Rectangle
Yi.Regex
Yi.Region
Yi.Snippets
Yi.Snippets.Haskell
Yi.Search
Yi.String
Yi.Style
Yi.Style.Library
Yi.Syntax
Yi.Syntax.Driver
Yi.Syntax.Haskell
Yi.Syntax.JavaScript
Yi.Syntax.Latex
Yi.Syntax.Layout
Yi.Syntax.OnlineTree
Yi.Syntax.Paren
Yi.Syntax.Tree
Yi.Syntax.Strokes.Haskell
Yi.Tag
Yi.TextCompletion,
Yi.UI.Common
Yi.UI.Batch
Yi.UI.Utils
Yi.UI.TabBar
Yi.Verifier.JavaScript
Yi.Window
Yi.Char.Unicode
include-dirs: src/Yi/Lexer
if flag (vty) && !os(windows)
cpp-options: -DFRONTEND_VTY
exposed-modules: Yi.UI.Vty
if flag(vte)
cpp-options: -DFRONTEND_VTE
exposed-modules: Yi.UI.Vte
if flag (pango)
cpp-options: -DFRONTEND_PANGO
exposed-modules: Yi.UI.Pango
Yi.UI.Pango.Control
other-modules: Yi.UI.Pango.ProjectTree
Yi.UI.Pango.Utils
if flag(gnome)
cpp-options: -DGNOME_ENABLED
exposed-modules: Yi.UI.Pango.Gnome
if flag (cocoa)
cpp-options: -DFRONTEND_COCOA
exposed-modules: Yi.UI.Cocoa
other-modules: Yi.UI.Cocoa.Application
Yi.UI.Cocoa.TextStorage
Yi.UI.Cocoa.TextView
Yi.UI.Cocoa.Utils
if flag (scion)
cpp-options: -DSCION
exposed-modules: Yi.Scion
if flag (ghcAPI)
cpp-options: -DGHC_API
exposed-modules: Yi.Mode.Shim
other-modules:
Shim.SHM, Shim.SessionMonad, Shim.Hsinfo, Shim.GhcCompat,
Shim.ExprSearch, Yi.GHC
if !os(windows)
cpp-options: -DCAUTIOUS_WRITES
other-modules:
Paths_yi,
-- "Internal" modules that the user better not see.
Yi.Buffer.Implementation
Data.Prototype
-- Should probably be split out to another package.
Data.Rope
Data.DelayList
Data.Trie
Parser.Incremental
Shim.CabalInfo
Shim.Utils
Shim.ProjectContent
System.FriendlyPath
-- Broken.
-- Yi.Keymap.Ee,
-- Yi.Keymap.Gwern,
-- Yi.Keymap.Joe,
-- Yi.Keymap.Mg,
-- Yi.Keymap.Nano,
-- Yi.Keymap.Vi,
executable parserTest
hs-source-dirs: src
if !flag(testing)
main-is: Dummy.hs
else
main-is: ParserTest/ParserTest.hs
other-modules:
Yi
Yi.Modes
Yi.Mode.Abella
Yi.Mode.Compilation
Yi.Mode.Haskell
Yi.Mode.Haskell.Dollarify
Yi.UI.Common
Paths_yi
Yi.GHC
Yi.Lexer.Abella
Yi.Lexer.Alex
Yi.Lexer.Compilation
Yi.Lexer.C
Yi.Lexer.ObjectiveC
Yi.Lexer.Cplusplus
Yi.Lexer.Haskell
Yi.Lexer.JavaScript
Yi.Lexer.LiterateHaskell
Yi.Lexer.Latex
Yi.Lexer.Srmc
Yi.Lexer.Cabal
Yi.Lexer.GNUMake
Yi.Lexer.OCaml
Yi.Lexer.Ott
Yi.Lexer.Perl
Yi.Lexer.Python
Yi.Lexer.SVNCommit
Yi.Lexer.Whitespace
Yi.Syntax
Yi.Syntax.Driver
Yi.Syntax.JavaScript
Yi.Syntax.Layout
Yi.Syntax.OnlineTree
Yi.Syntax.Paren
Yi.Syntax.Latex
Yi.Syntax.Tree
Yi.Mode.Interactive
include-dirs: src/Yi/Lexer
executable yi
hs-source-dirs: src
build-tools: alex >= 2.0.1 && < 3
-- haddock >= 2.2,
-- it seems harsh to require haddock 2.2 to even configure Yi
build-depends: Cabal >= 1.6 && < 1.11
build-depends: Diff >=0.1 && <0.2
build-depends: array, containers, directory, process, old-locale
build-depends: base >=4 && <5
build-depends: binary == 0.5.*
build-depends: bytestring >=0.9.1 && <0.9.2
build-depends: derive >=2.4 && <2.5
build-depends: data-accessor >= 0.2.1.4 && < 0.3
build-depends: data-accessor-monads-fd == 0.2.*
build-depends: data-accessor-template >= 0.2.1.3 && < 0.2.2
build-depends: dlist >=0.4.1
build-depends: dyre >=0.7
build-depends: filepath>=1.1 && <1.3
build-depends: fingertree >= 0 && <0.1
build-depends: ghc-paths ==0.1.*
build-depends: hint > 0.3.1
build-depends: monads-fd >= 0.1.0.1
build-depends: pointedlist >= 0.3.5 && <0.4
build-depends: pureMD5 >= 0.2.3
build-depends: random
build-depends: regex-base ==0.93.*
build-depends: regex-tdfa == 1.1.*
build-depends: rosezipper >= 0.1 && < 0.2
build-depends: split == 0.1.*
build-depends: template-haskell >= 2.4 && < 2.6
build-depends: time >= 1.1 && < 1.3
build-depends: utf8-string >= 0.3.1
build-depends: uniplate
build-depends: unix-compat >=0.1 && <0.3
ghc-options: -Wall -fno-warn-orphans -threaded
-- orphans are a performance warning, but
-- we need this in Yi.
-- ghc-options later on get appended to the original
ghc-prof-options: -prof -auto-all
if !os(mingw32)
build-depends: unix
if flag (vty) && !os(windows)
build-depends: vty>=4.0.0 && < 5
cpp-options: -DFRONTEND_VTY
if flag (vte)
-- Need executable path to call the version of Yi that's
-- currrently running
build-depends: executable-path
build-depends: gtk==0.12.*
build-depends: glib==0.12.*
build-depends: pango==0.12.*
build-depends: vte==0.12.*
cpp-options: -DFRONTEND_VTE
other-modules: Yi.UI.Vte
if flag (pango)
build-depends: gtk==0.12.*
build-depends: glib==0.12.*
build-depends: pango==0.12.*
cpp-options: -DFRONTEND_PANGO
other-modules: Yi.UI.Pango.ProjectTree
Yi.UI.Pango.Utils
Yi.UI.Pango
if flag(gnome)
build-depends: gconf==0.12.*
cpp-options: -DGNOME_ENABLED
other-modules: Yi.UI.Pango.Gnome
if flag (cocoa)
build-depends: HOC, HOC-AppKit, HOC-Foundation
cpp-options: -DFRONTEND_COCOA
if flag (scion)
build-depends: ghc == 6.10.*
build-depends: ghc-syb
build-depends: scion
cpp-options: -DSCION
if flag (ghcAPI)
build-depends: ghc == 6.8.3 || == 6.10.*
build-depends: old-time
-- Shim uses old-time
cpp-options: -DGHC_API
if !os(windows)
build-depends: cautious-file >= 0.1.5 && <0.2
cpp-options: -DCAUTIOUS_WRITES
if flag(hacking)
main-is: HackerMain.hs
else
main-is: Main.hs
other-modules:
Yi
Yi.Prelude
Yi.Boot
Yi.Keymap.Emacs
Yi.Keymap.Vim
Yi.Misc
Yi.Modes
Yi.Mode.Abella
Yi.Mode.Compilation
Yi.Mode.Haskell
Yi.Mode.Haskell.Dollarify
Yi.Buffer
Yi.Buffer.Basic
Yi.Keymap.Keys
Shim.CabalInfo
Shim.Utils
Shim.ProjectContent
System.FriendlyPath
Yi.UI.Common
Yi.UI.Batch
Paths_yi
Yi.GHC
Yi.Lexer.Abella
Yi.Lexer.Alex
Yi.Lexer.Compilation
Yi.Lexer.C
Yi.Lexer.ObjectiveC
Yi.Lexer.Cplusplus
Yi.Lexer.Haskell
Yi.Lexer.JavaScript
Yi.Lexer.LiterateHaskell
Yi.Lexer.Latex
Yi.Lexer.Srmc
Yi.Lexer.Cabal
Yi.Lexer.GNUMake
Yi.Lexer.OCaml
Yi.Lexer.Ott
Yi.Lexer.Perl
Yi.Lexer.Python
Yi.Lexer.SVNCommit
Yi.Lexer.Whitespace
Yi.Syntax
Yi.Syntax.Driver
Yi.Syntax.JavaScript
Yi.Syntax.Layout
Yi.Syntax.OnlineTree
Yi.Syntax.Paren
Yi.Syntax.Latex
Yi.Syntax.Tree
Yi.Syntax.Strokes.Haskell
Yi.Verifier.JavaScript
Yi.Mode.Interactive
Yi.Buffer.Indent
Yi.Buffer.HighLevel
Yi.Buffer.Implementation
Yi.Buffer.Normal
Yi.Buffer.Region
Yi.Completion
Yi.Core
Yi.Debug
Yi.Dired
Yi.Dynamic
Yi.Editor
Yi.Eval
Yi.Event
Data.Rope
Yi.History
Yi.Interact
Yi.Keymap
Yi.Keymap.Completion
Yi.Keymap.Emacs.KillRing
Yi.Keymap.Emacs.Utils
Yi.Main
Yi.Monad
Yi.Process
Yi.Snippets
Yi.Snippets.Haskell
Yi.Search
Yi.String
Yi.Style
Yi.TextCompletion
Yi.Buffer.Undo
Yi.Window
Yi.MiniBuffer
Yi.File
Yi.KillRing
Yi.IncrementalParse
Yi.UI.Utils
-- Should probably be split out to another package.
Data.DelayList
include-dirs: src/Yi/Lexer
if flag(testing)
cpp-options: -DTESTING
hs-source-dirs: . tests/
other-modules: Driver, TestSuite
build-depends: QuickCheck >= 2.1.0.2
build-depends: random
Something went wrong with that request. Please try again.