[Haskell-cafe] Re: Best Editor In Windows

Gregory Crosswhite gcross at phys.washington.edu
Fri Oct 16 13:41:05 EDT 2009

While Emacs has some outline capabilities, they are not at this time  
remotely as nice or as powerful as Leo, which among other things:

	*) does not require that you manually specify the depth of each node
	*) can automatically concatenate child nodes together so that you  
don't have to insert a section heading for each child node inside of  
the parent
	*) has a separate navigation and editing panel, rather than doing  
everything inline
	*) allows you to view your whole project as an outline spanning  
multiple files in multiple directories
	*) automatically takes care of embedding the outline information into  
the source files for you, so that you can use a single set of outline  
commands for source files in any language and Leo will work out how to  
translate them into comments behind-the-scenes
	*) allows you to "clone" nodes so that you can have multiple views of  
your project;  this way, for example, when working on a feature that  
spans several nodes you can clone all of the affected nodes and gather  
them together in one place
	*) has a special command "@ .... @c" that lets you easily put multi- 
line comments in source files even if the language only supports line  

Don't get me wrong, I would welcome seeing Emacs have outlining  
features for code development that are as powerful as Leo's, but it  
isn't there yet and hacking what is there to bring it up to parity  
with Leo would be highly non-trivial.

- Greg

On Oct 16, 2009, at 2:29 AM, Deniz Dogan wrote:

> 2009/10/16 Gregory Crosswhite <gcross at phys.washington.edu>:
>> In my humble opinion, one of the best editors for development of  
>> all time is
>> Leo:
>>        http://webpages.charter.net/edreamleo/front.html
>> Leo takes the idea of "code folding" and gives you complete control  
>> over it.
>>  That is, unlike other editors which only let you fold the code  
>> inside
>> if/while/for/etc. statements and which only show you an outline  
>> consisting
>> of a level for files and a level for function, Leo lets you  
>> structure the
>> levels of your outline arbitrarily so that you can "fold" arbitrary  
>> chunks
>> of code and do things like grouping together functions and files  
>> with a
>> similar purpose or implementation.  By structuring your code as an  
>> outline,
>> you make it easier for others and yourself both to navigate through  
>> the code
>> and also to see at a glance the high-level structure.
>> Anyway, just wanted to use this opportunity to plug my favorite  
>> tool.  :-)
>>  The downside about it is that the implementation sometimes feels a  
>> bit slow
>> and clunky, so part of me really hopes that at the very least  
>> people will
>> learn enough about this tool to take its ideas and steal them for  
>> other
>> editors!
>> Cheers,
>> Greg
> This should come as no surprise, but Emacs can do this as well.
> -- 
> Deniz Dogan

More information about the Haskell-Cafe mailing list