The message below pretty much sums it up.

My original problem with paredit and such is that it creates
"modality",
that is, the behaviour of insertion depends on the context.
This variable behaviour, this "modality problem" is what Jef Raskin
talks about in
"The Humane Interface" (a truly enlightening book BTW).
This is what makes us slow at using certain programs.
In other words, when I type a character to insert, I want it to always
insert;
this behaviour is predictable and causes the least amout of surprise.

Also, I feel that the command I submitted deals with 90% of the
missing feature support I need for writing balancing expressions;
everything else is trivial IMO (Emacs already deals with indenting,
skipping and selection of balanced expressions better than anything
else).

I'm sure you can get used to anything though,
but in my very personal experience,
the less "magic", the better.
Feel free to use or discard,
but if you install it I'll bet it'll grow on you.


On Sep 28, 4:07 am, Laurent PETIT <laurent.pe...@gmail.com> wrote:
> 2010/9/27 Tassilo Horn <tass...@member.fsf.org>
>
> > Hi,
>
> > did you already try out paredit [1]?  That mode is absolutely fabulous
> > for programming any lisp and provides much more than just closing
> > parens.
>
> My bet is that it's exactly paredit's behavior the OP is complaining about.
>
> We had the same discussions in counterclockwise, when I introduced paredit
> behavior.
>
> The problem is not that paredits commands aren't useful. They are !
>
> The problem is that certain people don't want any paredit command bound to
> "regular keystrokes". They want paredit out of their way when they are
> typing. They just want paredit commands accessible through command
> shortcuts.
> Think vim-like processing : when in "typing" mode, you cannot invoke any
> command available. You must enter the command mode before entering commands.
>
> We found *a* solution for Counterclockwise :
>
> The "Structural edition" (aka paredit's) commands are always available in
> the editor via keyboard shortcuts,
> but there are two modes:
>
>   * the "default mode" : (default as in "configured by default in a fresh
> ccw installation") *no* command is bound to regular keystrokes. a "("
> inserts a "(" (and not its balanced ")"). a "]" inserts a "]" (and does not
> jump to the end of the closing enclosing form). Period.
>   * the "strict mode" : (strict as in "does its best to always confine/guide
> the user into strict structural edition") . In this mode, you guessed it,
> you get the usual paredit commands bound to keystroke, plus some extras : do
> a valid selection of form or sibling forms: hit some opening "paren" ( [ {
> and it automatically wraps the selected form(s) with the appropriate kind of
> brackets. etc.
>
> In ccw, even in strict mode, you can go away from the strict mode for the
> following keystroke: just hit escape and the next keystroke will bypass
> strict mode's command binding.
> Finally, you can jump back and forth default/strict mode via the "Alt+D"
> keyboard shortcut.
>
> Sorry if in the end of my answer I somehow hijacked the thread, but I
> thought this may be of interest to some.
>
> --
> Laurent
>
>
>
> > Give it a shot!
>
> > Bye,
> > Tassilo
>
> > Footnotes:
> > [1]  http://mumble.net/~campbell/emacs/paredit.el
>
> > --
> > 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<clojure%2bunsubscr...@googlegroups.com>
> > For more options, visit this group at
> >http://groups.google.com/group/clojure?hl=en

-- 
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