From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Keith David Bershatsky Newsgroups: gmane.emacs.devel Subject: Identifying the face between STRETCH and right fringe. Date: Tue, 20 Nov 2018 08:39:16 -0800 Message-ID: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Trace: blaine.gmane.org 1542731920 9309 195.159.176.226 (20 Nov 2018 16:38:40 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 20 Nov 2018 16:38:40 +0000 (UTC) To: Emacs Devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Nov 20 17:38:36 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gP92n-0002Gg-6e for ged-emacs-devel@m.gmane.org; Tue, 20 Nov 2018 17:38:33 +0100 Original-Received: from localhost ([::1]:34602 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gP94t-0007rI-HG for ged-emacs-devel@m.gmane.org; Tue, 20 Nov 2018 11:40:43 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:53699) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gP93r-0007qt-MM for emacs-devel@gnu.org; Tue, 20 Nov 2018 11:39:40 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gP93n-0004Ye-LX for emacs-devel@gnu.org; Tue, 20 Nov 2018 11:39:39 -0500 Original-Received: from gateway20.websitewelcome.com ([192.185.67.41]:13574) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gP93j-0004Me-VW for emacs-devel@gnu.org; Tue, 20 Nov 2018 11:39:33 -0500 Original-Received: from cm10.websitewelcome.com (cm10.websitewelcome.com [100.42.49.4]) by gateway20.websitewelcome.com (Postfix) with ESMTP id E0561400C801F for ; Tue, 20 Nov 2018 10:39:17 -0600 (CST) Original-Received: from gator3053.hostgator.com ([50.87.144.69]) by cmsmtp with SMTP id P93VgWIAEBcCXP93VgdVrd; Tue, 20 Nov 2018 10:39:17 -0600 X-Authority-Reason: nr=8 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lawlist.com ; s=default; h=Content-Type:MIME-Version:Subject:To:From:Message-ID:Date: Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=MGrLE55VMxSRzpPb68WBWEujCGJGPOH52TeUbtn9rTY=; b=A6tiNEUtjn66qZMGNeNDdRH6Eq cKhdjVuSCFAPXYxG4r0xoMiLXpvSWYDSh8wBV3GZNVq1mX527DSTM8HLz+2Ty9Ab+j9s06fo+r+Qb QD/JELHlz3sRFphPyGbsTSCITn9kFA7d3MDa6VQJQl/docOQykTpUo1cDSfxHaDfnY4GzlqhiIJeW cBqHdR4KfGUXpEfLm5kkdZPLNXn80i2wIO7Dk/nFJ2/yeBYtl1nDLrU3LYQt8cjAPDWJ7v02E9Y2I mRq69Ok78qs1w08gqaHV1clIlmPTpE5uUxwZMiUdNRXolAwq+Ii2UlHa0QdFWLouHkbHv3hs+q9C6 Xero2dKA==; Original-Received: from cpe-98-146-201-115.natnow.res.rr.com ([98.146.201.115]:40540 helo=MBP.local) by gator3053.hostgator.com with esmtpsa (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.91) (envelope-from ) id 1gP93V-001Jo3-39 for emacs-devel@gnu.org; Tue, 20 Nov 2018 10:39:17 -0600 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - gator3053.hostgator.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - lawlist.com X-BWhitelist: no X-Source-IP: 98.146.201.115 X-Source-L: No X-Exim-ID: 1gP93V-001Jo3-39 X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: cpe-98-146-201-115.natnow.res.rr.com (MBP.local) [98.146.201.115]:40540 X-Source-Auth: lawlist X-Email-Count: 1 X-Source-Cap: bGF3bGlzdDtsYXdsaXN0O2dhdG9yMzA1My5ob3N0Z2F0b3IuY29t X-Local-Domain: yes X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 192.185.67.41 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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:231252 Archived-At: Step 1: Open a buffer and evaluate: (fundamental-mode) (setq word-wrap t) (setq buffer-display-table (make-display-table)) (aset buffer-display-table ?\t (vector (make-glyph-code ?\u00BB 'font-lock-warning-face) (make-glyph-code ?\t 'highlight))) Step 2: On a new line, type C-q TAB and then hold down the semi-colon key ';' to repeat the semi-colon character until it carries over to the next line. Step 3: Observe that the result is different on Emacs --with-ns, versus --with-x and also on a Windows machine. Specifically, the STRETCH on an NS platform is seen spanning all the way to the right fringe. On an X11 and NT platform, the STRETCH is only visible for the width of the STRETCH (depicted in the dump-glyph-row for each platform below). EXAMPLE NS (OSX): https://www.lawlist.com/images/tab_stretch_ns__2018_11_20.png EXAMPLE WINDOWS: https://www.lawlist.com/images/tab_stretch_nt__2018_11_20.png EXAMPLE X11: https://www.lawlist.com/images/tab_stretch_x11__2018_11_20.png QUESTION #1: In terms of identifying the face between the STRETCH and the right fringe, how can I programmatically know the difference between the NS situation, versus the NT and X11 situation? QUESTION #2: Is the difference in behavior between the different platforms "a bug", and should the X11 and NT ports be "fixed" so that they behave like the NS port in this situation? BACKGROUND: In the context of feature request #17684 (crosshairs); I am drawing vertical/horizontal lines on the screen using the built-in draw cursor mechanisms. When there is no glyph at the desired location, I simply draw/erase a vertical/horizontal line with the desired color. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (fundamental-mode) (setq word-wrap t) (setq buffer-display-table (make-display-table)) (aset buffer-display-table ?\t (vector (make-glyph-code ?\u00BB 'font-lock-warning-face) (make-glyph-code ?\t 'highlight))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; NS Row Start End Used oE><\CTZFesm X Y W H V A P ============================================================================== 11 384 385 2 010010101000 0 176 56 16 16 12 12 -1 -1 0 -1 -1 -1 -1 Glyph# Type Pos O W Code C Face LR 0 C 384 B 7 0x0000bb . 30 00 1 S 384 B 49 0x000000 29 00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; X11 Row Start End Used oE><\CTZFesm X Y W H V A P ============================================================================== 11 384 385 2 010010100000 0 165 64 15 15 12 12 -1 -1 0 -1 -1 -1 -1 Glyph# Type Pos O W Code C Face LR 0 C 384 B 8 0x0000bb . 33 00 1 S 384 B 56 0x000000 26 00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; NT Row Start End Used oE><\CTZFesm X Y W H V A P ============================================================================== 12 385 386 2 010010100000 0 192 64 16 16 12 12 -1 -1 0 -1 -1 -1 -1 Glyph# Type Pos O W Code C Face LR 0 C 385 B 8 0x0000bb . 31 00 1 S 385 B 56 0x000000 30 00 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;