[I'm not sure if the Clojure list is the right place for this, or if it should 
go somewhere more specific to CCW -- please let me know if it's the latter.]

On Jun 29, 2010, at 2:41 PM, Laurent PETIT wrote:
> There's now auto-indentation (when you hit the Enter key). What is
> still missing is "bulk" reindentation (whole file at once).

The important thing for me isn't "bulk" reindentation but rather the ability to 
hit a key (e.g. tab) to re-indent an existing line of code. Right now this is 
implemented in CCW but in strict mode only, as far as I can see. This 
functionality is really useful because it helps to clean up badly formatted 
code and -- most important for me -- to spot syntax errors when the 
auto-indentation doesn't match the expected structure.

Is there a way to get this without the other features of the strict mode? I 
don't personally like the other aspects of strict mode. For example when I type 
a ")" I want to insert a ")", not to jump the cursor to another location, and 
if I really want to delete a ")" then I really want to delete it without 
jumping through hoops.

I'm also experiencing some odd things if I have unbalanced brackets, which can 
occur even with the automatic pair insertion if one types closing brackets 
manually (which I'm doing by habit) or deletes text, etc. In strict mode if I 
have a bare, unbalanced "]" on a line by itself, outside of any definition, and 
then I hit tab on a line of code later in the buffer, then that line 
*vanishes*. It's not just that it gets indented funny, as far as I can tell -- 
it's just gone. That's pretty disconcerting. A bug?

In both modes auto-indentation seems to be oddly global, with a mismatched 
bracket anywhere in the buffer turning off all auto-indentation everywhere. In 
other lispy editors that I've used I think that the indentation has always been 
determined only from the code *before* the cursor and only back to the 
beginning of the current definition.

I know talk is cheap and beggars can't be choosers, etc., but FWIW I would 
prefer to have something close to the "default" mode but with tab (or some 
other key) working to re-indent the current line and with the indentation 
determined only from the text before the insertion point, back to the beginning 
of the current definition (as in emacs, etc.). I would also personally prefer 
to be able to turn off automatic pair insertion entirely -- maybe I'll get used 
to it, but I'm not at all sure about that (and if I do then I'll probably end 
up leaving out closing brackets when I write code elsewhere...).

Thanks so much for providing this tool and please don't take my suggestions as 
complaints. I'm very happy to have this tool as it is and am just making 
suggestions in the hopes that it can be improved.

 -Lee


--
Lee Spector, Professor of Computer Science
School of Cognitive Science, Hampshire College
893 West Street, Amherst, MA 01002-3359
lspec...@hampshire.edu, http://hampshire.edu/lspector/
Phone: 413-559-5352, Fax: 413-559-5438

Check out Genetic Programming and Evolvable Machines:
http://www.springer.com/10710 - http://gpemjournal.blogspot.com/

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to