From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#13399: 24.3.50; Word-wrap can't wrap at zero-width space U-200B Date: Fri, 11 Jan 2013 21:29:19 +0200 Message-ID: <83libztt68.fsf@gnu.org> References: <50EE7BE5.2060806@gmx.at> <83hamohmtj.fsf@gnu.org> <50EFCA6D.7090702@gmx.at> <83ip74ume7.fsf@gnu.org> <50EFE99A.5070508@gmx.at> <838v80ugv1.fsf@gnu.org> <50F021EC.4040107@gmx.at> <50F054A0.2040606@gmx.at> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1357932604 19214 80.91.229.3 (11 Jan 2013 19:30:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 11 Jan 2013 19:30:04 +0000 (UTC) Cc: 13399@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Jan 11 20:30:19 2013 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TtkJ1-0006jN-Fd for geb-bug-gnu-emacs@m.gmane.org; Fri, 11 Jan 2013 20:30:19 +0100 Original-Received: from localhost ([::1]:45713 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TtkIj-0000gQ-Uz for geb-bug-gnu-emacs@m.gmane.org; Fri, 11 Jan 2013 14:30:01 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:34956) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TtkIh-0000ft-8F for bug-gnu-emacs@gnu.org; Fri, 11 Jan 2013 14:30:00 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TtkIc-0007fl-7Q for bug-gnu-emacs@gnu.org; Fri, 11 Jan 2013 14:29:59 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:50360) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TtkIc-0007fh-4l for bug-gnu-emacs@gnu.org; Fri, 11 Jan 2013 14:29:54 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1TtkIj-0004FA-VY for bug-gnu-emacs@gnu.org; Fri, 11 Jan 2013 14:30:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 11 Jan 2013 19:30:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13399 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 13399-submit@debbugs.gnu.org id=B13399.135793257216253 (code B ref 13399); Fri, 11 Jan 2013 19:30:01 +0000 Original-Received: (at 13399) by debbugs.gnu.org; 11 Jan 2013 19:29:32 +0000 Original-Received: from localhost ([127.0.0.1]:55824 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TtkIF-0004E5-Oa for submit@debbugs.gnu.org; Fri, 11 Jan 2013 14:29:32 -0500 Original-Received: from mtaout22.012.net.il ([80.179.55.172]:59932) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TtkID-0004Dq-5Q for 13399@debbugs.gnu.org; Fri, 11 Jan 2013 14:29:30 -0500 Original-Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0MGH00E007DEHG00@a-mtaout22.012.net.il> for 13399@debbugs.gnu.org; Fri, 11 Jan 2013 21:29:03 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MGH00EC97G84380@a-mtaout22.012.net.il>; Fri, 11 Jan 2013 21:28:57 +0200 (IST) In-reply-to: X-012-Sender: halo1@inter.net.il X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:69624 Archived-At: > From: Stefan Monnier > Cc: Eli Zaretskii , 13399@debbugs.gnu.org > Date: Fri, 11 Jan 2013 13:50:00 -0500 > > > How could `posn-at-point' possibly work if the display is not up to > > date? > > Actually, it does not require the display to be up-to-date, only the > glyph-matrices. No, you cannot have up-to-date glyph matrices without triggering redisplay. Updating the glyph matrices is the first stage of redisplay (the second stage being updating the windows using the differences between the "current" and the "desired" glyph matrices). What you mean is use move_it_* family of functions. These _simulate_ redisplay by computing all the metrics of all the characters they move across, but without producing glyphs and glyph matrices. Because you don't actually need the glyph matrices for the task at hand, you only need the metrics of each display line (its ascent, descent, and pixel width), and those are computed and tracked by the display iterator even if no glyphs are produced. > You should be able to update the glyph-matrices without causing the > display to immediately reflect the changes. E.g. window-end with > a non-nil `update' argument should do that, IIUC. window-end with a non-nil UPDATE arg uses the above mentioned technique: it calls move_it_vertically, which moves through the lines computing their metrics, but doesn't produce any glyphs.