From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Nick Helm Newsgroups: gmane.emacs.devel Subject: mode-line size and position indicator Date: Wed, 23 Aug 2017 15:20:27 +1200 Message-ID: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: blaine.gmane.org 1503458498 28854 195.159.176.226 (23 Aug 2017 03:21:38 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 23 Aug 2017 03:21:38 +0000 (UTC) User-Agent: mu4e 0.9.18; emacs 25.2.1 To: Emacs developers Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Aug 23 05:21:33 2017 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 1dkMEU-00076C-Te for ged-emacs-devel@m.gmane.org; Wed, 23 Aug 2017 05:21:31 +0200 Original-Received: from localhost ([::1]:57706 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dkMEb-00081M-AO for ged-emacs-devel@m.gmane.org; Tue, 22 Aug 2017 23:21:37 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49836) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dkMDn-0007zj-4a for emacs-devel@gnu.org; Tue, 22 Aug 2017 23:20:48 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dkMDj-000440-3T for emacs-devel@gnu.org; Tue, 22 Aug 2017 23:20:47 -0400 Original-Received: from mail-me1aus01on0124.outbound.protection.outlook.com ([104.47.116.124]:15133 helo=AUS01-ME1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dkMDh-0003sG-PT for emacs-devel@gnu.org; Tue, 22 Aug 2017 23:20:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenpointcomms.onmicrosoft.com; s=selector1-tenpoint-co-nz; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=fkT9wZUxJFkmWhB6bEIRwoDOFoQJO9CM86AoVg2D5hM=; b=rhmuLjNcDcn6QHJZ2yObDnBvZxrxt3p9zWIFsONcrZQbTAce0FLTP5+9d1e8nu3KOmxBfjCpHqeVwrUod87z55LaR1npimAZgm5zEUsPDzVIc+XHgPAxYoLp90J1oU/V9SjHm4tzCwJNLMVpuwtGZX52sURUH48uAGiKViEDhoQ= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=nick@tenpoint.co.nz; Original-Received: from oberon (125.239.126.244) by SYXPR01MB1072.ausprd01.prod.outlook.com (10.169.175.13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1362.18; Wed, 23 Aug 2017 03:20:31 +0000 X-Originating-IP: [125.239.126.244] X-ClientProxiedBy: ME1PR01CA0078.ausprd01.prod.outlook.com (10.171.8.11) To SYXPR01MB1072.ausprd01.prod.outlook.com (10.169.175.13) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c2a98f7f-84d7-4b54-afdf-08d4e9d5e945 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(2017082002075)(300000503095)(300135400095)(49563074)(201703131423075)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:SYXPR01MB1072; X-Microsoft-Exchange-Diagnostics: 1; SYXPR01MB1072; 3:zTPM/cfTfQqrGiGdv7vte8Jq1ePrghJzfNDd06vLuxkOzfXg8C8ak8uEGNJUhZjpW0mLk0g58IE3LWC+/QCOJW5CC+bnJtzkLNUDoO3d7KRF5Bpvv3oFzTm4E6X9NE/2mMqU75+br6LiM/Ku3xrdJeMrSRvIOtAXZq4GZaT9XldzF8UW31Tgw7LwbV+PaWK0IYyLypDiNyl8s/C20jjOPR1u5P8nEJIl+gWyaUfOrtuAExxNNGoClvjW1AlyexHu; 25:vteLzN+Gq1MaEjz2nHDjdEUwfrbakaMy02DVY1sp5ZPuWJPFUQ1a+DvUq9uY7G/mqpAFqltpFhwaiEPDkJJOC8I9T68oFPa6BfKlNcFgqmgPhvoJVUPXOWkagQm/ETui4BZ8gyOzsK8eQVbLor61rPFNYvWwMXtN1USyh8AfiLy2lybI7Q9sIJnCAUkcOHBbigXmdBhyxOzcrn9dA2xg6J/aq5sBvzzkRID7CG5jWSKXc5qs8ld2Nvof7SgMJ4jxjlAoJt+sGCDb5VE0/0NwXNjsQXiIyyff/HQTBILNkWn67lygwYIupqUDNkQZG9v0klbE4Otao8op1ZaO8FG0vg==; 31:v4LYgiYLrJJaMKiKuQ6swoqTjaTnpbNPlHmbnCfO0DgXoOKgKBxwFftJvMVB6ThP4edXvJADsLMoZrXBmDYkzMhZN9Ps0E8v58usFo0zxdjkslt0OsQQvV+cWEqY6HgSYH9D5HmZNl1oyEyyo/Orsap2vvJQUcFvkQEf2MOkS/whogrSaWdwId9OF1CBSIXfNkzh+LOwcH7QqMrTsLUmMZGnMJkjZZhrjac+VIW/j X-MS-TrafficTypeDiagnostic: SYXPR01MB1072: X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(102415395)(6040450)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(10201501046)(3002001)(93006095)(93001095)(6041248)(20161123555025)(2016111802025)(201703131423075)(201703061421075)(20161123560025)(20161123564025)(20161123562025)(20161123558100)(6043046)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:SYXPR01MB1072; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:SYXPR01MB1072; X-Microsoft-Exchange-Diagnostics: 1; SYXPR01MB1072; 4:lwZtMVMR5uwbXR/iCzc6sxrWXumYEE9IOqoQ8NufSALBfx+pWJ2QTCvGNFmbGRyHaiPWqW9hlZidzOp8vNdJpYF0nH+N90bd9XA+iMOhxPa5UFUymJgpiZ/6WF7jJJR47SZE8o5adaqa8WxJ8JNLk44MqmZ+gMZobPvPDn5Lm0CZZA3nwYotiCLnZ+WMyfuBQ9LRho88R+oB1nJmaU7ljIJVOw3i4C5FNbnVnoPLHyEXTOrJDxAmt4B5S5T9LrwY X-Forefront-PRVS: 040866B734 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(7370300001)(6009001)(189002)(199003)(53754006)(4001350100001)(42882006)(6496005)(6916009)(7350300001)(97736004)(68736007)(6486002)(84326002)(110136004)(83506001)(36756003)(53936002)(86362001)(5890100001)(5660300001)(81166006)(6666003)(74482002)(305945005)(8676002)(42186005)(101416001)(106356001)(3846002)(2906002)(66066001)(105586002)(508600001)(7736002)(81156014)(4610100001)(5000100001)(4810100001)(25786009)(6116002)(50986999)(54356999)(189998001)(568964002)(33646002)(2476003); DIR:OUT; SFP:1102; SCL:1; SRVR:SYXPR01MB1072; H:oberon; FPR:; SPF:None; PTR:InfoNoRecords; MX:3; A:1; LANG:en; Received-SPF: None (protection.outlook.com: tenpoint.co.nz does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SYXPR01MB1072; 23:Qq6yhOlW8kdMd6QjlQDEhbkcrcE5adixD8vghgJwR?= =?us-ascii?Q?DPFQYw5ctyid1wOdrSlkXVsegtQEPbXnic7/a8XQ6ZFC2KdBgHXh1lJmrFqC?= =?us-ascii?Q?udO/wsDwPeSpuXg3BibqXKor4dgDVfcAcvy630vrmWbLO8g/dha9xWwp1lD/?= =?us-ascii?Q?97LBEbBM1xzYMPzIlVBOaFNCVa/NYn38fd6Dm7FXQcUO3JVGrQ8Hgcz5pP3N?= =?us-ascii?Q?8TRnBGmiEJlQIhX+U11uQ+N/wuy0y+fay2lJyWOyzXESK7TZLhj0coKF/jxR?= =?us-ascii?Q?gj/4Y3j11ybApeJi5tn9BglyIVzymrSyaNCqYJtfsbqd/EaXqAGpLZAHEiGc?= =?us-ascii?Q?7vpWUylNY5/PyKToZLkVsZndFXuyxITzRkeuclPQdTapZZzGsDvNSA501R0O?= =?us-ascii?Q?WGee3qnuA7x5tm403p4Eklq1mmHMABupnrTjoNkNe/t6EauP+KA8NISESLHe?= =?us-ascii?Q?2AUHAiiNbnVtBFQpeW1TwvU5qmAmHKpWgCsdVUp2Mu07d13h/tQbyS1HAp69?= =?us-ascii?Q?l3L98xhPtI6UO++oO4YyR/d90pGw6b8fU4Ppc+0t2oSC61v8CqCiClNFD25a?= =?us-ascii?Q?OWj6gPEwclZHSrs5ZL381ArAT7XjSXMQrCGf9c8NMoa7eUwj/wWf9CwTM+1D?= =?us-ascii?Q?KbO X-Microsoft-Exchange-Diagnostics: 1; SYXPR01MB1072; 6:wGqpJTh7Xe+nVM4cjtypXg8AuMYVO/42XmNDtfzgpD2U2OJlaG29OGoG7IgW+6A1m8YurNqRQIYM+fKZ4W/Mxg6jWzpqnIBJfq456lMJdgKlVs483+C4vP8sC6Xc/djQGGrpZ+hHoELUnv7cu+np4n3YvTsvmWaycuoqCfKuw89YtR289sQNcVxrguYEAA0xR/teBsxkoinC1PFtSrMls1zSIZPNiqdUCV2KedJR9h54+rPXaHZNGCB/Fkn34LhnmFCVmxPHIF5/YqbA8XbsDA65ewW/lr6+2fpSKZUuVt3q8iw0qhz0JQ8qQPvP1YxOP+nEBGFV008PmW9qo6thEA==; 5:HBT+WPXS9QwIYz6szNTw9Nx84+zmoEc/cr3OyjywraOwekCO19rjFVCc44oz9pSE+gIZmFnkcuhj7yHC0jfBGOUFcEfFqqRikKniqUVWXYBlqb38Hf2OGSbUYK6bBoq89ERpn6KFF4eLM8sAx1MkIA==; 24:47qBf3Ifk4M4VS/r+wMuuQ5cC+CsrbA+az4jjgNX7/aS76rlh8/mXjp30axv/jbz64heUP2YIidbciEXEjazoAI28P+D23Qz9UDe5y/fauk=; 7:GdsO8vSTiOCch7hpfXTRQTGskINEnadoXvaY+zmRLe6nwbGX769PkzZMQYR08YxY85+qt9hYVpn5bURi/Hqp29XEBrdAfo0dW+97qOH1TmqefM1JERksg63X5UqiBKdE+OK6sd7BTBk5zGK0CVbMmJUWQBHx3TXgYddFs7Ve12MbAUPLiXw6TsDpvw6D4UPQOQMbxCWaVA44kaEzLB1IKOAzFjBaQd8lt SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: tenpoint.co.nz X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Aug 2017 03:20:31.4702 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SYXPR01MB1072 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.116.124 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:217709 Archived-At: --=-=-= Content-Type: text/plain Hi all, I've been trying to improve my C skills lately, so I thought I'd take a crack at adding a small feature to xdisp.c. I've written a simple mode-line indicator to visually show the relative size and position of the window view on the current buffer. It works by adding a new %-spec construct to decode_mode_spec. The result is akin to a vertical scroll-bar, but it appears as a horizontal mark on the mode-line. It may be useful to terminal users or those who prefer to run with traditional scroll-bars turned off. I've attached a screen-grab of what it looks like on my system. The indicator is activated by adding %N~ to mode-line-format, where N is a positive integer that sets the desired width of the indicator in char. I'm under no illusions that this should be included in Emacs, and admittedly, it is a very simple feature, but I'd appreciate any comments or suggestions to improve the code. Patch attached. Thanks, Nick --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=xdisp.c.patch --- a/src/xdisp.c 2016-10-07 15:47:28.000000000 +1300 +++ b/src/xdisp.c 2016-10-07 15:54:31.000000000 +1300 @@ -23810,6 +23813,45 @@ Add %-spec for a mode-line size and position indicator. } } + /* Indicate the relative size and position of the current window. */ + case '~': + { + ptrdiff_t toppos = marker_position (w->start); + ptrdiff_t botpos = BUF_Z (b) - w->window_end_pos; + ptrdiff_t total = BUF_ZV (b) - BUF_BEGV (b) + 1; + ptrdiff_t open; + ptrdiff_t close; + int i; + char *p = decode_mode_spec_buf; + + /* It makes little sense to pad with spaces, so use WIDTH to + enable the user to specify the size of the indicator. */ + + if (width < 3) width = 3; /* Set a minimum indicator size. */ + width -= 2; /* Reserve space for open and close marks. */ + + if (total >= 1000000) + /* Do it differently for a large value, to avoid overflow. */ + { + open = ((toppos - BUF_BEGV (b)) + (total / width) - 1) / (total / width); + close = ((botpos - BUF_BEGV (b) + 1) + (total / width) - 1) / (total / width); + } + else + { + open = ((toppos - BUF_BEGV (b)) * width + total - 1) / total; + close = ((botpos - BUF_BEGV (b) + 1) * width + total - 1) / total; + } + + /* Build the indicator string. */ + for (i = 0; i < open; i++) *p++ = '-'; + *p++ = '+'; + for (i = 0; i < (close - open); i++) *p++ = '~'; + *p++ = '+'; + for (i = 0; i < (width - close); i++) *p++ = '-'; + *p = 0; + return decode_mode_spec_buf; + } + case 's': /* status of process */ obj = Fget_buffer_process (Fcurrent_buffer ()); --=-=-= Content-Type: image/png Content-Disposition: attachment; filename=indicator.png Content-Transfer-Encoding: base64 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 9shtAM6OzvTiU8Kh/1CaaMHsPKWBHznZ4F/0d/b1BX7Dqx+nAAAACXBIWXMAABYlAAAWJQFJUiTw AAACBmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpu czptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9 Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRm OkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8v bnMuYWRvYmUuY29tL2V4aWYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25z LmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MTE0 NjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4x MzY0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwv dGlmZjpPcmllbnRhdGlvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4K PC94OnhtcG1ldGE+Cqm7p8oAAEAASURBVHgB7Z0JfBXV2f9/l+whCQkmbEEhoOw7GlBUUHFFRVRo BW2VVq1V29q3VWv712r182r1rVrb4opLxVZckVZoZVVQQfZNE8WAksgSCCRkT7j/58w+c+/cTBJQ lt8ouWfOeZ5znvOd58zMfe6ZMwhz+9YJVG/YG/7zKd+E/3zF3nB1E62bso8HkG2iqojiipVPhgHI v/HhlRURxeFw9crw1Vo5wuMfX6kJVK2dbugMCs/fEw5/8fzV+v5ZT4bLo1Rh1+HThtKpWmG18/hK qbSJrWKdabey3fPvrBvDM97/vIkaghW7+ETtnKqnIjx9vG7D+Cd1Rs7ai+fcq9s4/kmR1DfL/rMe D+90CkvaKsNl4Y9NBT8ZYe4j4tIot3hdFv7Itx+2SvnaaQZXsSGAvK3JFAmQAAmQAAmQAAmQAAmQ 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 --=-=-=--