From: Gavin Sinclair Date: 2003-10-11T01:12:45+09:00 Subject: Project suggestion: Ruby code indenter From the thread "Extension Language for a Text Editor": >> So basically, if you like a modal editor or not, go for editor of form >> of your choice. I've seriously considered switching to vim simply >> because of the ruby support. (A few things have kept me from doing >> this, but they were merely technical issues.) > You're welcome to come aboard ;-). I'm the maintainer of the Vim indent > script, together with Gavin Sinclair. It is, in my opinion, better than > the one that comes with Emacs, even though I guess Matz wrote that one > ;-). I was meaning to mention this anyway, but now I can't resist. I think a great project for someone to work on - someone who really really wants to work on a project but isn't sure what :) - is a Ruby code indenter. Input: Ruby code Output: Properly indented Ruby code, perhaps accounting for user preferences Motivation: Ruby is a hard language to programatically indent, for reasons that will become obvious if this thread goes anywhere. Attempts to provide support for this in Vim and Emacs are progressing, but are hampered by languages which are not really suited to the task (please prove me wrong). If a general-purpose program were provided, it would offer a solution to any editor and for standalone use, as well as inspiring greater agility in the existing editor plugins. It would not render such plugins obsolete, rather provide a backup for the tasks they do not easily do (indent entire file, accounting for prefs, comments, here-docs, etc.). Comments: A Ruby implementation could take advantage of irb code, just like RDoc does. Understanding Ruby code, as opposed to reading a text stream, makes indentation much easier. There's no way I have time to work on this; just throwing it out there in case it catches someone's fancy. BTW... >> Because [Emacs is] general, people have written lots of stuff, some >> of which is quite silly (tetris, web browser, etc.), ...on the rare occasions I play Tetris, it's as a Vim plugin :) Search www.vim.org if you're interested. Gavin