Find file
Fetching contributors…
Cannot retrieve contributors at this time
158 lines (96 sloc) 3.77 KB
Yi -- the Haskell extensible editor
report bugs at:
* Cabal 1.6
* ghc 6.10.1
* Alex (the haskell lexer generator)
* for vty frontend, vty 3.1.6
* for pango frontend, gtk2hs 0.10
* for cocoa frontend
* latest SVN repo version of HOC:
# First you need to install libffi (unless you have leopard)
svn co
cd libffi/src
../configure --prefix=/usr/local CFLAGS=-DMACOSX
sudo make install
# Then you install the latest hoc version
svn co
cd hoc
runhaskell Setup configure --prefix=/usr/local
runhaskell Setup build
sudo runhaskell Setup install
cd Bindings
sudo bash --prefix=/usr/local
# maybe you want to add --user arg here
* many packages shipped with GHC or found on hackage.
see the cabal file for complete list.
* configure, compile and install yi as you would do for any other Cabal package.
NOTE: if you get
Setup.hs: Package yi-<version> can't be built on this system.
it means that you have no UI package available. See DEPENDENCIES.
* copy examples/yi.hs to ~/.yi/ and tailor to your needs
* run yi
yi --help
for a list of options.
The FAQ is maintained on the Haskell wiki:
All configuration (bindings, colours) is done with ~/.yi/yi.hs
See examples directory for files that you can use as ~/.yi/yi.hs
| Vty Pango Cocoa
Linux | X X
Windows | X
* Vty library has small problems with various terminals. Some keys
might not be well recognized.
* Reconfiguration does not work on windows. You'll have to compile your
customized Yi yourself.
* Cocoa frontend is still experimental.
To quickly check your changes to the yi tree,
you can run yi in place without installing with the usual
$ ./dist/build/yi/yi
but if you have a customized yi, the above will only launch it,
and therefore it will still use the installed yi library code.
To use your own yi.hs file in place, copy it across to yi/HackerMain.hs and
then configure yi to run in hacker mode. So assuming you are in the yi top level
directory (ie ls shows yi.cabal):
$ cp ~/.yi/yi.hs HackerMain.hs
$ runhaskell Setup.hs configure -fhacking
$ runhaskell Setup.hs build
$ ./dist/build/yi/yi
Though obviously the configure command should also include your usual
cabal flags which may well include "--user" and "--prefix".
This is the recommended mode of operation if you're tracking the
development repository.
NOTE: You must still install Yi once so that the icons can be found!
If you're interested in optimizing yi, the Makefile contains two example rules
for profiling called 'prof-config-hacking' and 'prof-config', depending on
whether you want to use -fhacking or not:
make prof-config-hacking
make run-inplace
# or
make prof-config
make install
Of course, feel free to adjust those rules to your needs. If you go for the
prof-config variant, here's an example of how you then can run yi to get
profiling output:
yi --force-recompile --ghc-options="-prof -auto-all" +RTS -p -hc
A porting checklist:
* you have latest GHC release
* you have either vty or gtk support