unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#10222: 24.0.92; Sentence movement commands make emacs hang
@ 2011-12-05 12:28 Tassilo Horn
  2011-12-05 14:08 ` Stefan Monnier
  2022-01-27 17:50 ` bug#10222: intangible property and sentence movement Lars Ingebrigtsen
  0 siblings, 2 replies; 8+ messages in thread
From: Tassilo Horn @ 2011-12-05 12:28 UTC (permalink / raw)
  To: 10222

I've found some strange issue with the sentence movement commands in
buffers that have invisible and intangible overlays.  Here's a recipe:

1. emacs -Q
2. Eval this function

(defun hide-every-2nd-line ()
  (interactive)
  (while t
    (next-line 2)
    (let ((ol (make-overlay (line-beginning-position)
			    (line-end-position))))
      (overlay-put ol 'invisible t)
      (overlay-put ol 'intangible t))))

3. C-h t (use the tutorial as test buffer)
4. M-x hide-every-2nd-line RET

So now we have the TUTORIAL buffer where every second line is invisible
and intangible and point is at `point-max'.  In this situation, there
are two problems with the M-a and M-e.

  1. In some situations, M-a/M-e don't move at all.  (I think, that's
     the case, if the sentence start/end is inside a hidden line, but
     I'm not too sure.)

     For example, when point is at point-max, I can hit M-a once so that
     point is at the beginning of the invisible line below the "Please
     read the file COPYING...".  Hitting M-a again has no effect
     anymore.

     (BTW: This "M-a/M-e don't move issue" is also present in the bug
     messages buffer.)

  2. At some positions in that file, invoking M-a/M-e will make emacs
     hang.  Try hitting M-e repeatedly beginning at the start of the
     buffer.  After the second M-e, point is after "See end for copying
     conditions.".  Hitting it again makes emacs hang.

Basically, that's not a too big issue in interactive use where you can
hit C-g, but it caused my emacs to freeze completely when I ran it from
a post-command-hook function which moves an overlay overlay using
(save-excursion (backward-sentence 1)) as start and (save-excursion
(forward-sentence 1)) as end position.

Bye,
Tassilo


In GNU Emacs 24.0.92.2 (x86_64-pc-linux-gnu, GTK+ Version 3.2.2)
 of 2011-12-03 on thinkpad
Windowing system distributor `The X.Org Foundation', version 11.0.11102000
configured using `configure  '--prefix=/usr' '--build=x86_64-pc-linux-gnu' '--host=x86_64-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib' '--libdir=/usr/lib64' '--disable-dependency-tracking' '--program-suffix=-emacs-24' '--infodir=/usr/share/info/emacs-24' '--with-crt-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../lib64' '--with-gameuser=games' '--without-compress-info' '--without-hesiod' '--without-kerberos' '--without-kerberos5' '--with-gpm' '--with-dbus' '--with-gnutls' '--without-selinux' '--with-sound' '--with-x' '--without-gconf' '--with-gsettings' '--with-xml2' '--without-toolkit-scroll-bars' '--without-wide-int' '--with-gif' '--with-jpeg' '--with-png' '--with-rsvg' '--with-tiff' '--with-xpm' '--with-imagemagick' '--with-xft' '--with-libotf' '--with-m17n-flt' '--with-x-toolkit=gtk3' 'EBZR_BRANCH=trunk' 'EBZR_REVNO=106589' 'build_alias=x86_64-pc-linux-gnu' 'host_alias=x86_64-pc-linux-gnu' 'CC=/usr/bin/clang' 'CFLAGS=-march=core2 -O2' 'LDFLAGS=-Wl,-O1 -Wl,--as-needed''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: C
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: de_DE.utf8
  value of $LC_NUMERIC: de_DE.utf8
  value of $LC_TIME: de_DE.utf8
  value of $LANG: en_US.utf8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Message

Minor modes in effect:
  gnus-message-citation-mode: t
  diff-auto-refine-mode: t
  TeX-source-correlate-mode: t
  mml-mode: t
  yas/global-mode: t
  yas/minor-mode: t
  recentf-mode: t
  anything-dired-mode: Enable anything completion in Dired functions.
Bindings affected are C, R, S, H.
This is deprecated for Emacs24+ users, use `ac-mode' instead.
  shell-dirtrack-mode: t
  global-subword-mode: t
  subword-mode: t
  savehist-mode: t
  show-paren-mode: t
  window-number-meta-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <left> SPC <M-right> <backspace> i n g SPC 
<M-left> <M-left> <M-left> <M-left> <M-right> <backspace> 
<backspace> d r <backspace> M-q <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> C-k a n SPC 
o v e r l y <backspace> a f <backspace> y M-q <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <down> <up> <up> <up> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <right> <right> <right> <right> 
<right> <right> <right> <M-backspace> <M-backspace> 
M-q c o m p l e t e l y SPC M-q <down> <left> <left> 
<left> <left> <left> <right> <right> <right> <right> 
<right> <right> <right> <M-backspace> <M-backspace> 
<M-backspace> <M-backspace> <M-backspace> <backspace> 
<backspace> SPC w h i c h <M-right> <backspace> <backspace> 
<backspace> e s M-q <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <down> <down> <down> <down> 
<down> <down> <down> <up> <up> C-a C-SPC <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> M-w M-x r e p o <tab> r 
<tab> <return>

Recent messages:
Using try-complete-lisp-symbol
Type M-x delete-other-windows to delete the help window.
Using try-complete-lisp-symbol [2 times]
Mark set [2 times]
Auto-saving...done
Mark set
Quit
Auto-saving...done
Mark set
Making completion list...

Load-path shadows:
~/repos/el/auctex/lpath hides ~/repos/el/gnus/lisp/lpath
~/repos/el/gnus/lisp/hex-util hides /usr/share/emacs/24.0.92/lisp/hex-util
~/repos/el/gnus/lisp/color hides /usr/share/emacs/24.0.92/lisp/color
~/repos/el/gnus/lisp/format-spec hides /usr/share/emacs/24.0.92/lisp/format-spec
~/repos/el/gnus/lisp/password-cache hides /usr/share/emacs/24.0.92/lisp/password-cache
~/repos/el/gnus/lisp/md4 hides /usr/share/emacs/24.0.92/lisp/md4
~/repos/el/gnus/lisp/dns-mode hides /usr/share/emacs/24.0.92/lisp/textmodes/dns-mode
~/repos/el/org-mode/lisp/ob-css hides /usr/share/emacs/24.0.92/lisp/org/ob-css
~/repos/el/org-mode/lisp/ob-exp hides /usr/share/emacs/24.0.92/lisp/org/ob-exp
~/repos/el/org-mode/lisp/ob-ref hides /usr/share/emacs/24.0.92/lisp/org/ob-ref
~/repos/el/org-mode/lisp/org-special-blocks hides /usr/share/emacs/24.0.92/lisp/org/org-special-blocks
~/repos/el/org-mode/lisp/ob-perl hides /usr/share/emacs/24.0.92/lisp/org/ob-perl
~/repos/el/org-mode/lisp/org-latex hides /usr/share/emacs/24.0.92/lisp/org/org-latex
~/repos/el/org-mode/lisp/ob-asymptote hides /usr/share/emacs/24.0.92/lisp/org/ob-asymptote
~/repos/el/org-mode/lisp/org-macs hides /usr/share/emacs/24.0.92/lisp/org/org-macs
~/repos/el/org-mode/lisp/org-xoxo hides /usr/share/emacs/24.0.92/lisp/org/org-xoxo
~/repos/el/org-mode/lisp/org-exp hides /usr/share/emacs/24.0.92/lisp/org/org-exp
~/repos/el/org-mode/lisp/ob-ruby hides /usr/share/emacs/24.0.92/lisp/org/ob-ruby
~/repos/el/org-mode/lisp/org-vm hides /usr/share/emacs/24.0.92/lisp/org/org-vm
~/repos/el/org-mode/lisp/ob-keys hides /usr/share/emacs/24.0.92/lisp/org/ob-keys
~/repos/el/org-mode/lisp/org-mew hides /usr/share/emacs/24.0.92/lisp/org/org-mew
~/repos/el/org-mode/lisp/ob-sqlite hides /usr/share/emacs/24.0.92/lisp/org/ob-sqlite
~/repos/el/org-mode/lisp/org-install hides /usr/share/emacs/24.0.92/lisp/org/org-install
~/repos/el/org-mode/lisp/ob-screen hides /usr/share/emacs/24.0.92/lisp/org/ob-screen
~/repos/el/org-mode/lisp/ob-org hides /usr/share/emacs/24.0.92/lisp/org/ob-org
~/repos/el/org-mode/lisp/org-agenda hides /usr/share/emacs/24.0.92/lisp/org/org-agenda
~/repos/el/org-mode/lisp/ob-ledger hides /usr/share/emacs/24.0.92/lisp/org/ob-ledger
~/repos/el/org-mode/lisp/org-info hides /usr/share/emacs/24.0.92/lisp/org/org-info
~/repos/el/org-mode/lisp/org-entities hides /usr/share/emacs/24.0.92/lisp/org/org-entities
~/repos/el/org-mode/lisp/ob-ocaml hides /usr/share/emacs/24.0.92/lisp/org/ob-ocaml
~/repos/el/org-mode/lisp/org-timer hides /usr/share/emacs/24.0.92/lisp/org/org-timer
~/repos/el/org-mode/lisp/org-id hides /usr/share/emacs/24.0.92/lisp/org/org-id
~/repos/el/org-mode/lisp/ob-haskell hides /usr/share/emacs/24.0.92/lisp/org/ob-haskell
~/repos/el/org-mode/lisp/org-pcomplete hides /usr/share/emacs/24.0.92/lisp/org/org-pcomplete
~/repos/el/org-mode/lisp/org-list hides /usr/share/emacs/24.0.92/lisp/org/org-list
~/repos/el/org-mode/lisp/ob-dot hides /usr/share/emacs/24.0.92/lisp/org/ob-dot
~/repos/el/org-mode/lisp/org-remember hides /usr/share/emacs/24.0.92/lisp/org/org-remember
~/repos/el/org-mode/lisp/ob-comint hides /usr/share/emacs/24.0.92/lisp/org/ob-comint
~/repos/el/org-mode/lisp/ob-C hides /usr/share/emacs/24.0.92/lisp/org/ob-C
~/repos/el/org-mode/lisp/org-archive hides /usr/share/emacs/24.0.92/lisp/org/org-archive
~/repos/el/org-mode/lisp/org-irc hides /usr/share/emacs/24.0.92/lisp/org/org-irc
~/repos/el/org-mode/lisp/ob-mscgen hides /usr/share/emacs/24.0.92/lisp/org/ob-mscgen
~/repos/el/org-mode/lisp/org-clock hides /usr/share/emacs/24.0.92/lisp/org/org-clock
~/repos/el/org-mode/lisp/org-taskjuggler hides /usr/share/emacs/24.0.92/lisp/org/org-taskjuggler
~/repos/el/org-mode/lisp/org-html hides /usr/share/emacs/24.0.92/lisp/org/org-html
~/repos/el/org-mode/lisp/org-table hides /usr/share/emacs/24.0.92/lisp/org/org-table
~/repos/el/org-mode/lisp/org-bbdb hides /usr/share/emacs/24.0.92/lisp/org/org-bbdb
~/repos/el/org-mode/lisp/ob-latex hides /usr/share/emacs/24.0.92/lisp/org/ob-latex
~/repos/el/org-mode/lisp/ob-tangle hides /usr/share/emacs/24.0.92/lisp/org/ob-tangle
~/repos/el/org-mode/lisp/org-capture hides /usr/share/emacs/24.0.92/lisp/org/org-capture
~/repos/el/org-mode/lisp/ob-awk hides /usr/share/emacs/24.0.92/lisp/org/ob-awk
~/repos/el/org-mode/lisp/org-bibtex hides /usr/share/emacs/24.0.92/lisp/org/org-bibtex
~/repos/el/org-mode/lisp/org-footnote hides /usr/share/emacs/24.0.92/lisp/org/org-footnote
~/repos/el/org-mode/lisp/ob hides /usr/share/emacs/24.0.92/lisp/org/ob
~/repos/el/org-mode/lisp/ob-R hides /usr/share/emacs/24.0.92/lisp/org/ob-R
~/repos/el/org-mode/lisp/org-freemind hides /usr/share/emacs/24.0.92/lisp/org/org-freemind
~/repos/el/org-mode/lisp/ob-java hides /usr/share/emacs/24.0.92/lisp/org/ob-java
~/repos/el/org-mode/lisp/org-mks hides /usr/share/emacs/24.0.92/lisp/org/org-mks
~/repos/el/org-mode/lisp/org-ctags hides /usr/share/emacs/24.0.92/lisp/org/org-ctags
~/repos/el/org-mode/lisp/ob-python hides /usr/share/emacs/24.0.92/lisp/org/ob-python
~/repos/el/org-mode/lisp/ob-sass hides /usr/share/emacs/24.0.92/lisp/org/ob-sass
~/repos/el/org-mode/lisp/ob-emacs-lisp hides /usr/share/emacs/24.0.92/lisp/org/ob-emacs-lisp
~/repos/el/org-mode/lisp/org-mobile hides /usr/share/emacs/24.0.92/lisp/org/org-mobile
~/repos/el/org-mode/lisp/ob-js hides /usr/share/emacs/24.0.92/lisp/org/ob-js
~/repos/el/org-mode/lisp/org-datetree hides /usr/share/emacs/24.0.92/lisp/org/org-datetree
~/repos/el/org-mode/lisp/org-attach hides /usr/share/emacs/24.0.92/lisp/org/org-attach
~/repos/el/org-mode/lisp/org-mhe hides /usr/share/emacs/24.0.92/lisp/org/org-mhe
~/repos/el/org-mode/lisp/org-w3m hides /usr/share/emacs/24.0.92/lisp/org/org-w3m
~/repos/el/org-mode/lisp/org-docview hides /usr/share/emacs/24.0.92/lisp/org/org-docview
~/repos/el/org-mode/lisp/ob-lilypond hides /usr/share/emacs/24.0.92/lisp/org/ob-lilypond
~/repos/el/org-mode/lisp/ob-gnuplot hides /usr/share/emacs/24.0.92/lisp/org/ob-gnuplot
~/repos/el/org-mode/lisp/org-mouse hides /usr/share/emacs/24.0.92/lisp/org/org-mouse
~/repos/el/org-mode/lisp/org-publish hides /usr/share/emacs/24.0.92/lisp/org/org-publish
~/repos/el/org-mode/lisp/ob-clojure hides /usr/share/emacs/24.0.92/lisp/org/ob-clojure
~/repos/el/org-mode/lisp/org-src hides /usr/share/emacs/24.0.92/lisp/org/org-src
~/repos/el/org-mode/lisp/org-wl hides /usr/share/emacs/24.0.92/lisp/org/org-wl
~/repos/el/org-mode/lisp/org-colview hides /usr/share/emacs/24.0.92/lisp/org/org-colview
~/repos/el/org-mode/lisp/org-compat hides /usr/share/emacs/24.0.92/lisp/org/org-compat
~/repos/el/org-mode/lisp/org-beamer hides /usr/share/emacs/24.0.92/lisp/org/org-beamer
~/repos/el/org-mode/lisp/ob-sql hides /usr/share/emacs/24.0.92/lisp/org/ob-sql
~/repos/el/org-mode/lisp/ob-lisp hides /usr/share/emacs/24.0.92/lisp/org/ob-lisp
~/repos/el/org-mode/lisp/org-plot hides /usr/share/emacs/24.0.92/lisp/org/org-plot
~/repos/el/org-mode/lisp/org-faces hides /usr/share/emacs/24.0.92/lisp/org/org-faces
~/repos/el/org-mode/lisp/org-habit hides /usr/share/emacs/24.0.92/lisp/org/org-habit
~/repos/el/org-mode/lisp/org-mac-message hides /usr/share/emacs/24.0.92/lisp/org/org-mac-message
~/repos/el/org-mode/lisp/org-indent hides /usr/share/emacs/24.0.92/lisp/org/org-indent
~/repos/el/org-mode/lisp/ob-matlab hides /usr/share/emacs/24.0.92/lisp/org/ob-matlab
~/repos/el/org-mode/lisp/ob-calc hides /usr/share/emacs/24.0.92/lisp/org/ob-calc
~/repos/el/org-mode/lisp/ob-plantuml hides /usr/share/emacs/24.0.92/lisp/org/ob-plantuml
~/repos/el/org-mode/lisp/org-crypt hides /usr/share/emacs/24.0.92/lisp/org/org-crypt
~/repos/el/org-mode/lisp/ob-scheme hides /usr/share/emacs/24.0.92/lisp/org/ob-scheme
~/repos/el/org-mode/lisp/org-icalendar hides /usr/share/emacs/24.0.92/lisp/org/org-icalendar
~/repos/el/org-mode/lisp/org-jsinfo hides /usr/share/emacs/24.0.92/lisp/org/org-jsinfo
~/repos/el/org-mode/lisp/ob-ditaa hides /usr/share/emacs/24.0.92/lisp/org/ob-ditaa
~/repos/el/org-mode/lisp/ob-octave hides /usr/share/emacs/24.0.92/lisp/org/ob-octave
~/repos/el/org-mode/lisp/ob-lob hides /usr/share/emacs/24.0.92/lisp/org/ob-lob
~/repos/el/org-mode/lisp/org-ascii hides /usr/share/emacs/24.0.92/lisp/org/org-ascii
~/repos/el/org-mode/lisp/org hides /usr/share/emacs/24.0.92/lisp/org/org
~/repos/el/org-mode/lisp/ob-eval hides /usr/share/emacs/24.0.92/lisp/org/ob-eval
~/repos/el/org-mode/lisp/ob-sh hides /usr/share/emacs/24.0.92/lisp/org/ob-sh
~/repos/el/org-mode/lisp/org-exp-blocks hides /usr/share/emacs/24.0.92/lisp/org/org-exp-blocks
~/repos/el/org-mode/lisp/org-inlinetask hides /usr/share/emacs/24.0.92/lisp/org/org-inlinetask
~/repos/el/org-mode/lisp/ob-maxima hides /usr/share/emacs/24.0.92/lisp/org/ob-maxima
~/repos/el/org-mode/lisp/ob-table hides /usr/share/emacs/24.0.92/lisp/org/ob-table
~/repos/el/org-mode/lisp/org-feed hides /usr/share/emacs/24.0.92/lisp/org/org-feed
~/repos/el/org-mode/lisp/org-gnus hides /usr/share/emacs/24.0.92/lisp/org/org-gnus
~/repos/el/org-mode/lisp/org-protocol hides /usr/share/emacs/24.0.92/lisp/org/org-protocol
~/repos/el/org-mode/lisp/org-docbook hides /usr/share/emacs/24.0.92/lisp/org/org-docbook
~/repos/el/org-mode/lisp/org-rmail hides /usr/share/emacs/24.0.92/lisp/org/org-rmail
~/repos/el/gnus/lisp/hmac-def hides /usr/share/emacs/24.0.92/lisp/net/hmac-def
~/repos/el/gnus/lisp/sasl hides /usr/share/emacs/24.0.92/lisp/net/sasl
~/repos/el/gnus/lisp/dns hides /usr/share/emacs/24.0.92/lisp/net/dns
~/repos/el/gnus/lisp/ntlm hides /usr/share/emacs/24.0.92/lisp/net/ntlm
~/repos/el/gnus/lisp/imap hides /usr/share/emacs/24.0.92/lisp/net/imap
~/repos/el/gnus/lisp/sasl-digest hides /usr/share/emacs/24.0.92/lisp/net/sasl-digest
~/repos/el/gnus/lisp/dig hides /usr/share/emacs/24.0.92/lisp/net/dig
~/repos/el/gnus/lisp/hmac-md5 hides /usr/share/emacs/24.0.92/lisp/net/hmac-md5
~/repos/el/gnus/lisp/tls hides /usr/share/emacs/24.0.92/lisp/net/tls
~/repos/el/gnus/lisp/sasl-cram hides /usr/share/emacs/24.0.92/lisp/net/sasl-cram
~/repos/el/gnus/lisp/sasl-ntlm hides /usr/share/emacs/24.0.92/lisp/net/sasl-ntlm
~/repos/el/gnus/lisp/netrc hides /usr/share/emacs/24.0.92/lisp/net/netrc
~/repos/el/gnus/lisp/binhex hides /usr/share/emacs/24.0.92/lisp/mail/binhex
~/repos/el/gnus/lisp/hashcash hides /usr/share/emacs/24.0.92/lisp/mail/hashcash
~/repos/el/gnus/lisp/uudecode hides /usr/share/emacs/24.0.92/lisp/mail/uudecode
~/repos/el/gnus/lisp/gnus-undo hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-undo
~/repos/el/gnus/lisp/qp hides /usr/share/emacs/24.0.92/lisp/gnus/qp
~/repos/el/gnus/lisp/nnmail hides /usr/share/emacs/24.0.92/lisp/gnus/nnmail
~/repos/el/gnus/lisp/gnus-srvr hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-srvr
~/repos/el/gnus/lisp/smiley hides /usr/share/emacs/24.0.92/lisp/gnus/smiley
~/repos/el/gnus/lisp/mm-encode hides /usr/share/emacs/24.0.92/lisp/gnus/mm-encode
~/repos/el/gnus/lisp/spam-stat hides /usr/share/emacs/24.0.92/lisp/gnus/spam-stat
~/repos/el/gnus/lisp/gnus-cite hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-cite
~/repos/el/gnus/lisp/nnnil hides /usr/share/emacs/24.0.92/lisp/gnus/nnnil
~/repos/el/gnus/lisp/mm-bodies hides /usr/share/emacs/24.0.92/lisp/gnus/mm-bodies
~/repos/el/gnus/lisp/nndir hides /usr/share/emacs/24.0.92/lisp/gnus/nndir
~/repos/el/gnus/lisp/gnus-picon hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-picon
~/repos/el/gnus/lisp/score-mode hides /usr/share/emacs/24.0.92/lisp/gnus/score-mode
~/repos/el/gnus/lisp/gnus-demon hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-demon
~/repos/el/gnus/lisp/gssapi hides /usr/share/emacs/24.0.92/lisp/gnus/gssapi
~/repos/el/gnus/lisp/gnus-delay hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-delay
~/repos/el/gnus/lisp/nntp hides /usr/share/emacs/24.0.92/lisp/gnus/nntp
~/repos/el/gnus/lisp/gnus-spec hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-spec
~/repos/el/gnus/lisp/mml hides /usr/share/emacs/24.0.92/lisp/gnus/mml
~/repos/el/gnus/lisp/utf7 hides /usr/share/emacs/24.0.92/lisp/gnus/utf7
~/repos/el/gnus/lisp/nndiary hides /usr/share/emacs/24.0.92/lisp/gnus/nndiary
~/repos/el/gnus/lisp/rtree hides /usr/share/emacs/24.0.92/lisp/gnus/rtree
~/repos/el/gnus/lisp/compface hides /usr/share/emacs/24.0.92/lisp/gnus/compface
~/repos/el/gnus/lisp/smime hides /usr/share/emacs/24.0.92/lisp/gnus/smime
~/repos/el/gnus/lisp/starttls hides /usr/share/emacs/24.0.92/lisp/gnus/starttls
~/repos/el/gnus/lisp/gnus-win hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-win
~/repos/el/gnus/lisp/gnus-draft hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-draft
~/repos/el/gnus/lisp/gnus-dup hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-dup
~/repos/el/gnus/lisp/auth-source hides /usr/share/emacs/24.0.92/lisp/gnus/auth-source
~/repos/el/gnus/lisp/nnrss hides /usr/share/emacs/24.0.92/lisp/gnus/nnrss
~/repos/el/gnus/lisp/nndoc hides /usr/share/emacs/24.0.92/lisp/gnus/nndoc
~/repos/el/gnus/lisp/mm-view hides /usr/share/emacs/24.0.92/lisp/gnus/mm-view
~/repos/el/gnus/lisp/gnus-cache hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-cache
~/repos/el/gnus/lisp/gnus-cus hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-cus
~/repos/el/gnus/lisp/flow-fill hides /usr/share/emacs/24.0.92/lisp/gnus/flow-fill
~/repos/el/gnus/lisp/nnfolder hides /usr/share/emacs/24.0.92/lisp/gnus/nnfolder
~/repos/el/gnus/lisp/mml-sec hides /usr/share/emacs/24.0.92/lisp/gnus/mml-sec
~/repos/el/gnus/lisp/rfc2045 hides /usr/share/emacs/24.0.92/lisp/gnus/rfc2045
~/repos/el/gnus/lisp/nnheader hides /usr/share/emacs/24.0.92/lisp/gnus/nnheader
~/repos/el/gnus/lisp/shr hides /usr/share/emacs/24.0.92/lisp/gnus/shr
~/repos/el/gnus/lisp/nnoo hides /usr/share/emacs/24.0.92/lisp/gnus/nnoo
~/repos/el/gnus/lisp/nnvirtual hides /usr/share/emacs/24.0.92/lisp/gnus/nnvirtual
~/repos/el/gnus/lisp/rfc2231 hides /usr/share/emacs/24.0.92/lisp/gnus/rfc2231
~/repos/el/gnus/lisp/message hides /usr/share/emacs/24.0.92/lisp/gnus/message
~/repos/el/gnus/lisp/gnus-sync hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-sync
~/repos/el/gnus/lisp/gmm-utils hides /usr/share/emacs/24.0.92/lisp/gnus/gmm-utils
~/repos/el/gnus/lisp/.dir-locals hides /usr/share/emacs/24.0.92/lisp/gnus/.dir-locals
~/repos/el/gnus/lisp/nnbabyl hides /usr/share/emacs/24.0.92/lisp/gnus/nnbabyl
~/repos/el/gnus/lisp/gnus-msg hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-msg
~/repos/el/gnus/lisp/registry hides /usr/share/emacs/24.0.92/lisp/gnus/registry
~/repos/el/gnus/lisp/rfc2104 hides /usr/share/emacs/24.0.92/lisp/gnus/rfc2104
~/repos/el/gnus/lisp/spam hides /usr/share/emacs/24.0.92/lisp/gnus/spam
~/repos/el/gnus/lisp/nnmairix hides /usr/share/emacs/24.0.92/lisp/gnus/nnmairix
~/repos/el/gnus/lisp/gnus-mlspl hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-mlspl
~/repos/el/gnus/lisp/gnus-mh hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-mh
~/repos/el/gnus/lisp/gnus-ml hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-ml
~/repos/el/gnus/lisp/nnimap hides /usr/share/emacs/24.0.92/lisp/gnus/nnimap
~/repos/el/gnus/lisp/mailcap hides /usr/share/emacs/24.0.92/lisp/gnus/mailcap
~/repos/el/gnus/lisp/gnus-start hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-start
~/repos/el/gnus/lisp/mm-decode hides /usr/share/emacs/24.0.92/lisp/gnus/mm-decode
~/repos/el/gnus/lisp/plstore hides /usr/share/emacs/24.0.92/lisp/gnus/plstore
~/repos/el/gnus/lisp/pop3 hides /usr/share/emacs/24.0.92/lisp/gnus/pop3
~/repos/el/gnus/lisp/mm-extern hides /usr/share/emacs/24.0.92/lisp/gnus/mm-extern
~/repos/el/gnus/lisp/sieve-manage hides /usr/share/emacs/24.0.92/lisp/gnus/sieve-manage
~/repos/el/gnus/lisp/nnir hides /usr/share/emacs/24.0.92/lisp/gnus/nnir
~/repos/el/gnus/lisp/mml1991 hides /usr/share/emacs/24.0.92/lisp/gnus/mml1991
~/repos/el/gnus/lisp/nndraft hides /usr/share/emacs/24.0.92/lisp/gnus/nndraft
~/repos/el/gnus/lisp/mail-source hides /usr/share/emacs/24.0.92/lisp/gnus/mail-source
~/repos/el/gnus/lisp/gnus-salt hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-salt
~/repos/el/gnus/lisp/spam-wash hides /usr/share/emacs/24.0.92/lisp/gnus/spam-wash
~/repos/el/gnus/lisp/nneething hides /usr/share/emacs/24.0.92/lisp/gnus/nneething
~/repos/el/gnus/lisp/mml-smime hides /usr/share/emacs/24.0.92/lisp/gnus/mml-smime
~/repos/el/gnus/lisp/shr-color hides /usr/share/emacs/24.0.92/lisp/gnus/shr-color
~/repos/el/gnus/lisp/deuglify hides /usr/share/emacs/24.0.92/lisp/gnus/deuglify
~/repos/el/gnus/lisp/mm-partial hides /usr/share/emacs/24.0.92/lisp/gnus/mm-partial
~/repos/el/gnus/lisp/spam-report hides /usr/share/emacs/24.0.92/lisp/gnus/spam-report
~/repos/el/gnus/lisp/nnspool hides /usr/share/emacs/24.0.92/lisp/gnus/nnspool
~/repos/el/gnus/lisp/gnus-gravatar hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-gravatar
~/repos/el/gnus/lisp/gnus hides /usr/share/emacs/24.0.92/lisp/gnus/gnus
~/repos/el/gnus/lisp/gnus-dired hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-dired
~/repos/el/gnus/lisp/mml2015 hides /usr/share/emacs/24.0.92/lisp/gnus/mml2015
~/repos/el/gnus/lisp/html2text hides /usr/share/emacs/24.0.92/lisp/gnus/html2text
~/repos/el/gnus/lisp/nnmaildir hides /usr/share/emacs/24.0.92/lisp/gnus/nnmaildir
~/repos/el/gnus/lisp/ecomplete hides /usr/share/emacs/24.0.92/lisp/gnus/ecomplete
~/repos/el/gnus/lisp/gnus-ems hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-ems
~/repos/el/gnus/lisp/nnweb hides /usr/share/emacs/24.0.92/lisp/gnus/nnweb
~/repos/el/gnus/lisp/gnus-group hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-group
~/repos/el/gnus/lisp/nnregistry hides /usr/share/emacs/24.0.92/lisp/gnus/nnregistry
~/repos/el/gnus/lisp/ietf-drums hides /usr/share/emacs/24.0.92/lisp/gnus/ietf-drums
~/repos/el/gnus/lisp/legacy-gnus-agent hides /usr/share/emacs/24.0.92/lisp/gnus/legacy-gnus-agent
~/repos/el/gnus/lisp/gnus-bcklg hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-bcklg
~/repos/el/gnus/lisp/gnus-sum hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-sum
~/repos/el/gnus/lisp/rfc2047 hides /usr/share/emacs/24.0.92/lisp/gnus/rfc2047
~/repos/el/gnus/lisp/canlock hides /usr/share/emacs/24.0.92/lisp/gnus/canlock
~/repos/el/gnus/lisp/sieve hides /usr/share/emacs/24.0.92/lisp/gnus/sieve
~/repos/el/gnus/lisp/gnus-util hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-util
~/repos/el/gnus/lisp/gnus-fun hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-fun
~/repos/el/gnus/lisp/nnml hides /usr/share/emacs/24.0.92/lisp/gnus/nnml
~/repos/el/gnus/lisp/mm-util hides /usr/share/emacs/24.0.92/lisp/gnus/mm-util
~/repos/el/gnus/lisp/gnus-bookmark hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-bookmark
~/repos/el/gnus/lisp/gnus-kill hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-kill
~/repos/el/gnus/lisp/mm-url hides /usr/share/emacs/24.0.92/lisp/gnus/mm-url
~/repos/el/gnus/lisp/gnus-async hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-async
~/repos/el/gnus/lisp/nngateway hides /usr/share/emacs/24.0.92/lisp/gnus/nngateway
~/repos/el/gnus/lisp/sieve-mode hides /usr/share/emacs/24.0.92/lisp/gnus/sieve-mode
~/repos/el/gnus/lisp/gnus-int hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-int
~/repos/el/gnus/lisp/gravatar hides /usr/share/emacs/24.0.92/lisp/gnus/gravatar
~/repos/el/gnus/lisp/gnus-art hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-art
~/repos/el/gnus/lisp/yenc hides /usr/share/emacs/24.0.92/lisp/gnus/yenc
~/repos/el/gnus/lisp/nnmh hides /usr/share/emacs/24.0.92/lisp/gnus/nnmh
~/repos/el/gnus/lisp/mail-prsvr hides /usr/share/emacs/24.0.92/lisp/gnus/mail-prsvr
~/repos/el/gnus/lisp/gnus-range hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-range
~/repos/el/gnus/lisp/gnus-sieve hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-sieve
~/repos/el/gnus/lisp/gnus-agent hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-agent
~/repos/el/gnus/lisp/messcompat hides /usr/share/emacs/24.0.92/lisp/gnus/messcompat
~/repos/el/gnus/lisp/mm-uu hides /usr/share/emacs/24.0.92/lisp/gnus/mm-uu
~/repos/el/gnus/lisp/gnus-logic hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-logic
~/repos/el/gnus/lisp/gnus-topic hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-topic
~/repos/el/gnus/lisp/gnus-diary hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-diary
~/repos/el/gnus/lisp/gnus-setup hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-setup
~/repos/el/gnus/lisp/nnmbox hides /usr/share/emacs/24.0.92/lisp/gnus/nnmbox
~/repos/el/gnus/lisp/rfc1843 hides /usr/share/emacs/24.0.92/lisp/gnus/rfc1843
~/repos/el/gnus/lisp/gnus-eform hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-eform
~/repos/el/gnus/lisp/gnus-vm hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-vm
~/repos/el/gnus/lisp/nnagent hides /usr/share/emacs/24.0.92/lisp/gnus/nnagent
~/repos/el/gnus/lisp/mail-parse hides /usr/share/emacs/24.0.92/lisp/gnus/mail-parse
~/repos/el/gnus/lisp/gnus-html hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-html
~/repos/el/gnus/lisp/gnus-uu hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-uu
~/repos/el/gnus/lisp/gnus-registry hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-registry
~/repos/el/gnus/lisp/gnus-score hides /usr/share/emacs/24.0.92/lisp/gnus/gnus-score
~/repos/el/gnus/lisp/time-date hides /usr/share/emacs/24.0.92/lisp/calendar/time-date
~/repos/el/gnus/lisp/parse-time hides /usr/share/emacs/24.0.92/lisp/calendar/parse-time
~/repos/el/gnus/lisp/pgg-pgp hides /usr/share/emacs/24.0.92/lisp/obsolete/pgg-pgp
~/repos/el/gnus/lisp/pgg-def hides /usr/share/emacs/24.0.92/lisp/obsolete/pgg-def
~/repos/el/gnus/lisp/pgg hides /usr/share/emacs/24.0.92/lisp/obsolete/pgg
~/repos/el/gnus/lisp/pgg-pgp5 hides /usr/share/emacs/24.0.92/lisp/obsolete/pgg-pgp5
~/repos/el/gnus/lisp/pgg-parse hides /usr/share/emacs/24.0.92/lisp/obsolete/pgg-parse
~/repos/el/gnus/lisp/pgg-gpg hides /usr/share/emacs/24.0.92/lisp/obsolete/pgg-gpg

Features:
(shadow emacsbug hippie-exp qp mule-util sort smiley ansi-color
gnus-cite gnus-async gnus-bcklg gnus-ml newcomment notifications nndraft
nnmh rot13 utf-7 gnutls network-stream starttls nnimap parse-time utf7
netrc nnml nnnil gnus-agent gnus-srvr gnus-score score-mode nnvirtual
gnus-cache gnus-demon nntp spam spam-stat gnus-uu yenc gnus-msg
gnus-gravatar mail-extr gravatar gnus-topic gnus-registry registry
eieio-base ert find-func ewoc debug th-private jka-compr multi-isearch
reftex-sel reftex-ref reftex-parse reftex-toc diff-mode diff vc-hg
preview prv-emacs dbus reftex-vcr reftex-dcr reftex-auc reftex
reftex-vars tex-buf font-latex latex tex-style tex latexenc filecache
bookmark pp eldoc go-mode-load greqlscript-mode greql-mode tg-mode
generic th-latex preview-latex tex-site auto-loads paredit epa-file epa
epg wtf cus-edit cus-start cus-load rdictcc org-location-google-maps
google-maps google-maps-static google-maps-geocode google-maps-base json
org-google-weather solar cal-dst google-weather url-cache appt vc-git
hl-line org-mobile org-capture org-mks org-irc org-info org-gnus
org-docview org-bibtex bibtex org-protocol org-attach org-id
org-icalendar gnus-art mm-uu mml2015 epg-config mm-view mml-smime smime
dig nnir gnus-sum nnoo gnus-group gnus-undo nnmail mail-source
gnus-start gnus-spec gnus-int gnus-range gnus-win org-contacts org-html
org-exp ob-exp org-exp-blocks calfw-ical icalendar diary-lib
diary-loaddefs calfw-org org-agenda calfw holidays hol-loaddefs org
ob-emacs-lisp ob-tangle ob-ref ob-lob ob-table org-footnote org-src
ob-comint ob-keys ob ob-eval org-pcomplete org-list org-faces org-compat
org-entities org-macs cal-menu calendar cal-loaddefs org-install
highlight-symbol hi-lock th-boxquote boxquote rect ecomplete message
idna rfc822 mml mml-sec mm-decode mm-bodies mm-encode mailabbrev
gmm-utils mailheader info edit-server server yasnippet dropdown-list
derived help-mode view disp-table color noutline outline
browse-kill-ring recentf tree-widget anything-config browse-url rx
anything-match-plugin xml grep compile tramp tramp-compat shell
pcomplete comint ring format-spec tramp-loaddefs dired-x easymenu
dired-aux ffap thingatpt anything uniquify easy-mmode iedit help-macro
subword saveplace savehist highlight-parentheses paren lusty-explorer
dired regexp-opt warnings advice help-fns advice-preload window-number
cl edmacro kmacro th-common mm-url gnus gnus-ems nnheader mail-utils
wid-edit url-http tls url url-proxy url-privacy url-expand url-methods
url-history mailcap url-auth mail-parse rfc2231 rfc2047 rfc2045
ietf-drums url-cookie url-util url-parse auth-source eieio byte-opt
bytecomp byte-compile cconv macroexp assoc gnus-util password-cache
url-gw url-vars mm-util mail-prsvr windmove gnus-load
browse-kill-ring-autoloads clojure-mode-autoloads
highlight-parentheses-autoloads highlight-symbol-autoloads
paredit-autoloads pastebin-autoloads window-number-autoloads package
tabulated-list site-gentoo time-date tooltip ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image fringe
lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar
mouse jit-lock font-lock syntax facemenu font-core frame cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev
minibuffer loaddefs button faces cus-face files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
dynamic-setting system-font-setting font-render-setting move-toolbar gtk
x-toolkit x multi-tty emacs)





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#10222: 24.0.92; Sentence movement commands make emacs hang
  2011-12-05 12:28 bug#10222: 24.0.92; Sentence movement commands make emacs hang Tassilo Horn
@ 2011-12-05 14:08 ` Stefan Monnier
  2011-12-05 15:41   ` Tassilo Horn
  2022-01-27 17:50 ` bug#10222: intangible property and sentence movement Lars Ingebrigtsen
  1 sibling, 1 reply; 8+ messages in thread
From: Stefan Monnier @ 2011-12-05 14:08 UTC (permalink / raw)
  To: Tassilo Horn; +Cc: 10222

>       (overlay-put ol 'invisible t)
>       (overlay-put ol 'intangible t))))

While we probably can and maybe should make your test case work better,
the use of `intangible' is strongly discouraged, specifically because
it's pretty much impossible to make all other commands work "right" in
the presence of intangible properties.


        Stefan





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#10222: 24.0.92; Sentence movement commands make emacs hang
  2011-12-05 14:08 ` Stefan Monnier
@ 2011-12-05 15:41   ` Tassilo Horn
  2011-12-05 16:55     ` Stefan Monnier
  2011-12-10 12:11     ` Johan Bockgård
  0 siblings, 2 replies; 8+ messages in thread
From: Tassilo Horn @ 2011-12-05 15:41 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: 10222

Stefan Monnier <monnier@IRO.UMontreal.CA> writes:

>>       (overlay-put ol 'invisible t)
>>       (overlay-put ol 'intangible t))))
>
> While we probably can and maybe should make your test case work
> better, the use of `intangible' is strongly discouraged,

Then it would be good if the docs stated that.

> specifically because it's pretty much impossible to make all other
> commands work "right" in the presence of intangible properties.

Yes, probably.  I've experimented a bit more, and it gets even worse
with line-editing commands like kill-line, especially if the intangible
overlay starts or ends in the middle of a line...

But it seems that there's no sense in making an invisible overlay
intangible, anyway, at least I can't find any difference in behavior
between invisible and invisible + intangible (except that the problem
doesn't appear).

The mode that creates those overlays (iedit-mode) seems to do that in
order to protect the invisible regions, but you can still accidentally
kill an intangible & invisible region as a whole.  `read-only' would be
the right property to use here, but it seems it's not supported for
overlays...

Bye,
Tassilo





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#10222: 24.0.92; Sentence movement commands make emacs hang
  2011-12-05 15:41   ` Tassilo Horn
@ 2011-12-05 16:55     ` Stefan Monnier
  2011-12-05 19:31       ` Tassilo Horn
  2011-12-10 12:11     ` Johan Bockgård
  1 sibling, 1 reply; 8+ messages in thread
From: Stefan Monnier @ 2011-12-05 16:55 UTC (permalink / raw)
  To: Tassilo Horn; +Cc: 10222

>>> (overlay-put ol 'invisible t)
>>> (overlay-put ol 'intangible t))))
>> While we probably can and maybe should make your test case work
>> better, the use of `intangible' is strongly discouraged,
> Then it would be good if the docs stated that.

I've just changed lispref/text.texi to warn against `intangible' properties.

> The mode that creates those overlays (iedit-mode) seems to do that in

Please report this problem to the author (he can probably just remove
the code that puts the `intangible' without changing anything else).
While you're add it, mention that he should use define-minor-mode.


        Stefan





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#10222: 24.0.92; Sentence movement commands make emacs hang
  2011-12-05 16:55     ` Stefan Monnier
@ 2011-12-05 19:31       ` Tassilo Horn
  0 siblings, 0 replies; 8+ messages in thread
From: Tassilo Horn @ 2011-12-05 19:31 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: 10222

Stefan Monnier <monnier@IRO.UMontreal.CA> writes:

>>>> (overlay-put ol 'invisible t)
>>>> (overlay-put ol 'intangible t))))
>>> While we probably can and maybe should make your test case work
>>> better, the use of `intangible' is strongly discouraged,
>> Then it would be good if the docs stated that.
>
> I've just changed lispref/text.texi to warn against `intangible' properties.
>
>> The mode that creates those overlays (iedit-mode) seems to do that in
>
> Please report this problem to the author (he can probably just remove
> the code that puts the `intangible' without changing anything else).
> While you're add it, mention that he should use define-minor-mode.

I'll do so.

Bye,
Tassilo





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#10222: 24.0.92; Sentence movement commands make emacs hang
  2011-12-05 15:41   ` Tassilo Horn
  2011-12-05 16:55     ` Stefan Monnier
@ 2011-12-10 12:11     ` Johan Bockgård
  1 sibling, 0 replies; 8+ messages in thread
From: Johan Bockgård @ 2011-12-10 12:11 UTC (permalink / raw)
  To: Tassilo Horn; +Cc: 10222

Tassilo Horn <tassilo@member.fsf.org> writes:

> `read-only' would be the right property to use here, but it seems it's
> not supported for overlays...

http://debbugs.gnu.org/6922





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#10222: intangible property and sentence movement
  2011-12-05 12:28 bug#10222: 24.0.92; Sentence movement commands make emacs hang Tassilo Horn
  2011-12-05 14:08 ` Stefan Monnier
@ 2022-01-27 17:50 ` Lars Ingebrigtsen
  2022-01-27 20:12   ` Tassilo Horn
  1 sibling, 1 reply; 8+ messages in thread
From: Lars Ingebrigtsen @ 2022-01-27 17:50 UTC (permalink / raw)
  To: Tassilo Horn; +Cc: 10222

Tassilo Horn <tassilo@member.fsf.org> writes:

> (defun hide-every-2nd-line ()
>   (interactive)
>   (while t
>     (next-line 2)
>     (let ((ol (make-overlay (line-beginning-position)
> 			    (line-end-position))))
>       (overlay-put ol 'invisible t)
>       (overlay-put ol 'intangible t))))
> 
> 3. C-h t (use the tutorial as test buffer)
> 4. M-x hide-every-2nd-line RET

> So now we have the TUTORIAL buffer where every second line is invisible
> and intangible and point is at `point-max'.  In this situation, there
> are two problems with the M-a and M-e.
>
>   1. In some situations, M-a/M-e don't move at all.  (I think, that's
>      the case, if the sentence start/end is inside a hidden line, but
>      I'm not too sure.)
>
>      For example, when point is at point-max, I can hit M-a once so that
>      point is at the beginning of the invisible line below the "Please
>      read the file COPYING...".  Hitting M-a again has no effect
>      anymore.
>
>      (BTW: This "M-a/M-e don't move issue" is also present in the bug
>      messages buffer.)
>
>   2. At some positions in that file, invoking M-a/M-e will make emacs
>      hang.  Try hitting M-e repeatedly beginning at the start of the
>      buffer.  After the second M-e, point is after "See end for copying
>      conditions.".  Hitting it again makes emacs hang.

(I'm going through old bug reports that unfortunately weren't resolved
at the time.)

Testing this recipe in Emacs 29, I don't see any hangs with those
commands, but perhaps you need to put point in certain particular
places -- or perhaps this has been fixed in the years since it was
reported.

Are you still seeing this issue in recent Emacs versions?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 8+ messages in thread

* bug#10222: intangible property and sentence movement
  2022-01-27 17:50 ` bug#10222: intangible property and sentence movement Lars Ingebrigtsen
@ 2022-01-27 20:12   ` Tassilo Horn
  0 siblings, 0 replies; 8+ messages in thread
From: Tassilo Horn @ 2022-01-27 20:12 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: 10222-done

Lars Ingebrigtsen <larsi@gnus.org> writes:

Hi Lars,

> (I'm going through old bug reports that unfortunately weren't resolved
> at the time.)
>
> Testing this recipe in Emacs 29, I don't see any hangs with those
> commands, but perhaps you need to put point in certain particular
> places -- or perhaps this has been fixed in the years since it was
> reported.
>
> Are you still seeing this issue in recent Emacs versions?

No, I've tried my recipe from the report but couldn't reproduce neither
the "doesn't move anymore" nor the "emacs hangs" issue.  I'm therefore
closing the report.

Thanks,
  Tassilo





^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2022-01-27 20:12 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-12-05 12:28 bug#10222: 24.0.92; Sentence movement commands make emacs hang Tassilo Horn
2011-12-05 14:08 ` Stefan Monnier
2011-12-05 15:41   ` Tassilo Horn
2011-12-05 16:55     ` Stefan Monnier
2011-12-05 19:31       ` Tassilo Horn
2011-12-10 12:11     ` Johan Bockgård
2022-01-27 17:50 ` bug#10222: intangible property and sentence movement Lars Ingebrigtsen
2022-01-27 20:12   ` Tassilo Horn

Code repositories for project(s) associated with this public inbox

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

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