all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: David Kastrup <dak@gnu.org>
Cc: Stefan Monnier <monnier@iro.umontreal.ca>, emacs-devel@gnu.org
Subject: Re: [bug]org-mode with flyspell-mode freezes emacs
Date: Wed, 18 Oct 2006 00:38:32 +0200	[thread overview]
Message-ID: <85zmbumutz.fsf@lola.goethe.zz> (raw)
In-Reply-To: <4535587B.8010601@student.lu.se> (Lennart Borgman's message of "Wed\, 18 Oct 2006 00\:26\:03 +0200")

Lennart Borgman <lennart.borgman.073@student.lu.se> writes:

> David Kastrup wrote:
>> Lennart Borgman <lennart.borgman.073@student.lu.se> writes:
>>
>>   
>>> Stefan Monnier wrote:
>>>     
>>>> - `intangible' is evil.  Why do you use it in org-mode?
>>>>         
>>> Why is `intangible' evil?
>>
>> Because it violates basic assumptions of a loooot of code.  It is
>> better to use post-command-hook to move the cursor out of forbidden
>> areas (and pre-command-hook to figure out from which direction the
>> forbidden area was entered, so that one can move out the other
>> side): that way, the effect is restricted to the command loop and
>> does not cause surprises to normal code.
>>   
>
> Thanks, I see. But is there then a reason why not intangible mimics
> the behaviour that you describe?

Botched-up design.

> Is it even possible to look at this as a bug?

More like a misfeature.  intangible behaves as documented.  It is just
that the documented behavior can cause a lot of ugly surprises except
in very tightly controlled circumstances, since normal movement
commands skid on intangible areas like on banana peels.  What will
some convenience function like "mark-word" do in the presence of
intangible?  There is really no way to find out from reading its DOC
string.  You have to read every code line to figure out where it
merely calculates cursor distances, and where it tries moving there.

And when the circumstances are very tightly controlled so that
intangible is not encountered by any function not expecting it, you
don't actually need intangible.

In my opinion, it might be a good idea to introduce another property
(like `unpleasant') which is merely not used as a final resting place
in the command loop, at the same time deprecating `intangible', and
removing it at some later time.

I don't think there is much _reliably_ working code using it around,
anyway.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

  reply	other threads:[~2006-10-17 22:38 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-15  4:20 [bug]org-mode with flyspell-mode freezes emacs Richard Stallman
2006-10-16  7:55 ` Carsten Dominik
2006-10-16  9:01 ` Carsten Dominik
2006-10-16 18:47   ` Richard Stallman
2006-10-17  4:33   ` Nick Roberts
2006-10-17 10:57     ` Carsten Dominik
2006-10-17 13:13       ` Carsten Dominik
2006-10-17 14:18         ` martin rudalics
2006-10-17 17:49         ` martin rudalics
2006-10-17 21:11           ` Carsten Dominik
2006-10-17 22:03             ` Stefan Monnier
2006-10-17 22:09               ` Lennart Borgman
2006-10-17 22:14                 ` David Kastrup
2006-10-17 22:26                   ` Lennart Borgman
2006-10-17 22:38                     ` David Kastrup [this message]
2006-10-17 22:44                       ` Drew Adams
2006-10-17 22:38               ` Carsten Dominik
2006-10-17 22:49                 ` David Kastrup
2006-10-18  4:26                   ` Carsten Dominik
2006-10-18  7:35                     ` David Kastrup
2006-10-20 22:05                       ` Michael Olson
2006-10-21  6:13                         ` David Kastrup
2006-10-21 18:30                           ` Michael Olson
2006-10-23  5:11                             ` Richard Stallman
2006-10-23 13:00                               ` Michael Olson
2006-10-22  0:24                           ` Stefan Monnier
2006-10-22 16:39                             ` David Kastrup
2006-10-18  0:28                 ` Stefan Monnier
2006-10-18  4:26                   ` Carsten Dominik
2006-10-18  4:14             ` Chong Yidong
2006-10-17 18:40       ` Richard Stallman
2006-10-17 20:45         ` martin rudalics
2006-10-18 10:41           ` Richard Stallman
  -- strict thread matches above, loose matches on Subject: below --
2006-10-12  2:10 Leo
2006-10-12 16:57 ` Leo
2006-10-12 16:57   ` Leo

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

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

  git send-email \
    --in-reply-to=85zmbumutz.fsf@lola.goethe.zz \
    --to=dak@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /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.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.