unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Drew Adams <drew.adams@oracle.com>
To: "João Távora" <joaotavora@gmail.com>
Cc: help-gnu-emacs@gnu.org
Subject: RE: on adding a function call to a s-exp
Date: Wed, 13 Jun 2018 07:39:17 -0700 (PDT)	[thread overview]
Message-ID: <e1b05476-6dc0-4227-a68f-158bcad3d70b@default> (raw)
In-Reply-To: <87k1r33r0q.fsf@gmail.com>

> > FWIW (he ducks), I work with a Lispy language, Elisp ;-).  And I
> > don't use any "structured-editing" feature (crutch / ball-&-chain)
> > such as `paredit' or `electric-pair-mode'.  I'm non-electric all
> > the way.
> >
> > To me, having an editor automatically insert a closing delimiter
> > each time I type an opening delimiter is a bother, not an aid.
> 
> For the sake of improving electric-pair-mode, can you explain exactly
> when/under what conditions it is a bother?

A bother _to me_.  People are different.  People use Emacs
differently.

To me, it's a bother to care about the inserted closing
delimiters and where they might currently be - they just
get in my way.

I think that if you go the route of using such
delimiter-balancing "aids" you need to do it whole-hog.
The ability to have things automatically closed for you
_necessitates_ slurping, barfing, etc.

What you see as convenience, I see as workaround hacks,
needed only because you've turned on automatically closing
delimiters.

If things are pre-closed then, yes, of course you need
commands to pull stuff inside the closings and push stuff
outside the closings.  You want to add a list element?
OK, now you have to insert it before the proper closing
paren.

I don't want Emacs to assume where/when I want to close
a list, vector, string, etc.  I'll close it where/when
I want.

With Emacs it's _trivial_ to see which closing delimiter
corresponds to which opening delimiter.  If this were
not easy to see then, sure, maybe there would be a stronger
case for automatically inserting closing delimiters.

In Emacs it's almost impossible to accidentally leave
something unclosed or to close something in the wrong
place.  Automatic closing?  YAGNI.

> I'm asking because that's precisely what electric-pair-mode attempts: It
> *doesn't* insert a closing delimiter "each time", only when it guesses
> that it will not bother you.  If it is mis-guessing some situation I
> would very much like to know about it.

FWIW: DWIM too often really means _not_ "Do what I mean"
but "Do what some programmer thought would be cool to
guess I might mean."

I don't want Mr. Electric trying to second-guess where/when
I want to close something.  I don't need that kind of "help".

It's easier for me to know whether a paren is escaped or
inside a string or whatever than it is for some "smart"
code.  I know my intentions.  DWIM code can only guess
my intentions.  And when it guesses wrong I need to go
behind it an sweep up the droppings.

But as I say, everyone's different.  It's _good_, not bad,
that such electric-delimiter modes exist.  I don't argue
against them.  With Emacs, anyone can get what s?he wants.



  reply	other threads:[~2018-06-13 14:39 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-09 22:05 on adding a function call to a s-exp Robert Girault
2018-06-10  2:38 ` Noam Postavsky
2018-06-10  4:46   ` João Távora
     [not found]   ` <mailman.1619.1528606007.1292.help-gnu-emacs@gnu.org>
2018-06-11  1:04     ` Robert Girault
2018-06-11  1:30       ` Noam Postavsky
2018-06-12 14:40         ` João Távora
2018-06-12 21:34           ` Noam Postavsky
     [not found]       ` <mailman.1644.1528680649.1292.help-gnu-emacs@gnu.org>
2018-06-11 14:29         ` Robert Girault
2018-06-12 14:24       ` João Távora
     [not found]       ` <mailman.1739.1528813488.1292.help-gnu-emacs@gnu.org>
2018-06-13 21:06         ` Robert Girault
2018-06-10 21:28 ` Xavier Maillard
     [not found] ` <mailman.1614.1528598292.1292.help-gnu-emacs@gnu.org>
2018-06-11  0:59   ` Robert Girault
2018-06-11  1:21     ` Michael Heerdegen
2018-06-11  1:26       ` Michael Heerdegen
2018-06-11  2:18       ` Michael Heerdegen
     [not found]     ` <mailman.1642.1528680086.1292.help-gnu-emacs@gnu.org>
2018-06-11 14:35       ` Robert Girault
2018-06-12 14:34         ` João Távora
2018-06-12 15:14           ` Óscar Fuentes
2018-06-12 16:17             ` Drew Adams
2018-06-12 16:26               ` João Távora
2018-06-13  7:11               ` Andreas Röhler
2018-06-13 10:44               ` João Távora
2018-06-13 14:39                 ` Drew Adams [this message]
2018-06-13 15:31                   ` João Távora
2018-06-13 16:03                     ` Drew Adams
2018-06-13 16:01                 ` Andreas Röhler
2018-06-13 16:17                   ` João Távora
     [not found]                   ` <mailman.1823.1528906669.1292.help-gnu-emacs@gnu.org>
2018-06-13 16:48                     ` Emanuel Berg
2018-06-13 17:32                       ` João Távora
2018-06-13 18:23                       ` Drew Adams
     [not found]                       ` <mailman.1848.1528914250.1292.help-gnu-emacs@gnu.org>
2018-06-13 19:18                         ` Emanuel Berg
2018-06-12 16:24             ` João Távora
2018-06-12 17:00               ` Eric Abrahamsen
2018-06-12 17:04               ` Óscar Fuentes
2018-06-12 17:07                 ` Eric Abrahamsen
2018-06-12 17:19                   ` João Távora
2018-06-12 17:26                     ` Eric Abrahamsen
2018-06-12 17:16                 ` João Távora
     [not found]             ` <mailman.1747.1528820272.1292.help-gnu-emacs@gnu.org>
2018-06-13 21:09               ` Robert Girault
     [not found]         ` <mailman.1740.1528814086.1292.help-gnu-emacs@gnu.org>
2018-06-13 21:02           ` Robert Girault
2018-06-13 21:32             ` João Távora
     [not found] ` <mailman.1637.1528666199.1292.help-gnu-emacs@gnu.org>
2018-06-11  1:05   ` Robert Girault

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e1b05476-6dc0-4227-a68f-158bcad3d70b@default \
    --to=drew.adams@oracle.com \
    --cc=help-gnu-emacs@gnu.org \
    --cc=joaotavora@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).