From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: line-start? Date: Fri, 07 Feb 2020 15:43:58 +0200 Message-ID: <83wo8yecm9.fsf@gnu.org> References: <87ftfof1xl.fsf@gnu.org> <877e0zrhud.fsf@gnu.org> <83o8ubfu9l.fsf@gnu.org> <87v9oiucdn.fsf@bzg.fr> <838sleg3d6.fsf@gnu.org> <87lfpe7lmk.fsf@bzg.fr> <83zhduelui.fsf@gnu.org> <878sle7jx9.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="64081"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Bastien Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Feb 07 14:45:05 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1j03wO-000GYv-Kq for ged-emacs-devel@m.gmane-mx.org; Fri, 07 Feb 2020 14:45:04 +0100 Original-Received: from localhost ([::1]:56708 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j03wN-0006n9-Lu for ged-emacs-devel@m.gmane-mx.org; Fri, 07 Feb 2020 08:45:03 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:37817) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j03vv-00066O-3R for emacs-devel@gnu.org; Fri, 07 Feb 2020 08:44:36 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:52056) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1j03vu-0001fd-Vk for emacs-devel@gnu.org; Fri, 07 Feb 2020 08:44:35 -0500 Original-Received: from [176.228.60.248] (port=1960 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1j03vq-0002Ri-Dw; Fri, 07 Feb 2020 08:44:34 -0500 In-reply-to: <878sle7jx9.fsf@gnu.org> (message from Bastien on Fri, 07 Feb 2020 11:48:02 +0100) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:244893 Archived-At: > From: Bastien > Cc: emacs-devel@gnu.org > Date: Fri, 07 Feb 2020 11:48:02 +0100 > > Eli Zaretskii writes: > > > Then (nth 1) of what posn-at-x-y returns is not what you want. You > > should use the (car (nth 6)) instead. > > FWIW I just tried this: > > (car (nth 6 (posn-at-x-y > 0 (+ (cdr (posn-x-y (posn-at-point pos window))) > (- (nth 1 (window-edges nil t nil t)) > (nth 1 (window-edges nil nil nil t))))))) > > but it always returns 0. Ah, yes: you will have to add (window-hscroll) to that. > The version with (nth 1 ...) works fine, though. But that gives a buffer position, not column number. > >> The use case was this one: given a line, display the content of this > >> line in the header line. When horizontally scrolled, the header has > >> to display a substring of the line under the cursor, something like > >> (substring (current-line-string) offset-in-columns). > > > > But using the buffer position, you could use buffer-substring instead, > > right? > > Yes, sure, but I still need to know the window line start to get the > offset. No, buffer position is absolute.