From HaskellWiki
< Yi
Revision as of 09:02, 24 February 2008 by JeanPhilippeBernardy (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
  • Simplify creation of keybindings; More powerful combinators.
  • Tons of fixes
  • Support for templates
  • Syntax hilight modes for Cabal & C++
  • GHC 6.8 support (and Yi is ever easier to build)
  • word completion infrastructure
  • vim: more window commands implemented
  • Very important architectural cleanups (07:07, 15 July 2007 (UTC)):
    • Buffer implementation is purely functional
    • IO monad is only found at the toplevel (buffer-only and editor-only actions do not rely on IO)
    • Window management is frontend independent
    • Factored indent-code across keymaps
    • All dependency cycles removed (makes for an easier understanding of the code)
  • C-code removed from Yi
  • Dynamic selection of frontend
  • Cleaned up the multiple package mess
  • Console buffer (old news)
  • Common buffer backend (across all frontends) (15:08, 2 June 2007 (UTC))
  • Overlays (thanks Ben Moseley)
  • per-buffer extensible state (11:44, 28 May 2007 (UTC))
  • Synchronous keymaps: the behaviour of the keymap (ie. the underlying parser) can depend on the editor state.
  • Full-dynamic Yi
    • it's now possible to change any part of the Yi codebase and see the result with a mere 'M-x reconfigE' (take that, Steve Yegge :))
  • Yi is now hosted on darcs.haskell.org/yi
  • Dired mode (thanks Ben Moseley)
  • Yi 0.2 released!
  • Buffer-specific code is now contained in BufferM monad
  • Multiple marks per buffer
  • All keymaps use a unified mechanism! (and are therefore potentially composable)
  • Miniwindows for vty frontend
  • Miniwindows for GTK frontend
  • Basic support for query-replace (emacs)
  • Rudimentary support for indentation
  • Syntax highlighting in GTK frontend
  • Completion for file names
  • Incremental search (emacs)
  • Completion for M-x, and buffer switch.
  • History for emacs mode minibuffer
  • New commands and keybindings can be defined easily and dynamically
  • Yi is an haskell interpreter!
    • Possibility to run editor actions interactively (similar to emacs M-x)
    • Configuration is just a haskell module exporting (yiMain :: Action)
  • Possibility to evaluate haskell expressions interactively.
  • New, unified way to define Keybindings
  • Vty frontend supports Haskell (lexical) syntax highlighting (thanks Stefan O'Rear)
  • GTK frontend works in Win32
  • GTK frontend (in addition of Vty frontend) (requires gtk>=
  • Linewrap support
  • Bugfixes in scrolling
  • Lots of simplifications in the cursor management
  • Keymaps can now process typed events instead of Chars (no extra decode step)
  • Yi.Debug added for debugging
  • Vty frontend replaces Curses frontend