From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: highlight-indent-guides in display engine Date: Fri, 12 Jul 2019 09:57:24 +0300 Message-ID: <83tvbr3fl7.fsf@gnu.org> References: <20190706211716.semd47fksgh66rug@Ergus> <83sgrh7uol.fsf@gnu.org> <20190711190651.b2kg64fg2ole2i5d@Ergus> <83zhlk2xiu.fsf@gnu.org> <20190712002127.6tm3scplu73syinp@Ergus> Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="142423"; mail-complaints-to="usenet@blaine.gmane.org" Cc: emacs-devel@gnu.org To: Ergus Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jul 12 08:59:35 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1hlpWp-000atL-6g for ged-emacs-devel@m.gmane.org; Fri, 12 Jul 2019 08:59:35 +0200 Original-Received: from localhost ([::1]:47056 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hlpV1-0008CH-4B for ged-emacs-devel@m.gmane.org; Fri, 12 Jul 2019 02:57:43 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:57071) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hlpUt-0008By-46 for emacs-devel@gnu.org; Fri, 12 Jul 2019 02:57:36 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:50869) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hlpUt-00059Q-0N; Fri, 12 Jul 2019 02:57:35 -0400 Original-Received: from [176.228.60.248] (port=4074 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1hlpUs-0007aK-2A; Fri, 12 Jul 2019 02:57:34 -0400 In-reply-to: <20190712002127.6tm3scplu73syinp@Ergus> (message from Ergus on Fri, 12 Jul 2019 02:21:27 +0200) 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:238516 Archived-At: > Date: Fri, 12 Jul 2019 02:21:27 +0200 > From: Ergus > Cc: emacs-devel@gnu.org > > >I don't think I understand: what do you mean by "add the indicator"? > >How would this indicator look like? > > > Maybe a vertical bar (like our previous column indicator) or a width > line. Or something customizable somehow. We just need to look around, > there are several alternatives. We must chose the one that fits better > and produces less complications for us. But provides the functionality > somehow. > > I don't thing how the indicator looks like may be a problem, but how > accurate or specific it behaves. > > I am just looking around and Geany adds some vertical points as the > indicator positions (every tab or every x spaces). But the spaces are > only "indicated" when used for the indentation.. > > Sublime behaves in the same way. But there is an option to highlight the > indicator only in the blocks around the current cursor. (As in the > attachement) I didn't receive any attachments with your message. > Athom on the other hand seems to behave as in the > highlight-indent-guides.el package: > https://atom.io/packages/indent-guide-improved > > With the animations and so on. Which seems to be the most complete > behavior, but less efficient. The animations and highlighting inside the current block should be in Lisp, not in the display code. If at all. > In all the cases I just see that they add the indicator based on the > characters between the beginning of the line and the indentation (first > non blank character) not looking at the previous lines. They ignore if > there is a previous line with wrong indentation or if the current line > adds 3 tabs more respecting to the previous one. > > So, implementing it in this way doesn't seems to be so complex right? So basically you are talking about displaying some special glyph at every tab stop inside leading whitespace of a line, or making each tab-stop width have a different background color? Yes, this should be possible to do in the display code. I just hope enough people will see this as sufficient, because if most current users of these packages won't switch, this new feature will not be worth its development, documentation, and maintenance effort. Maybe we should ask on Reddit first?