From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Boruch Baum Newsgroups: gmane.emacs.bugs Subject: bug#43295: 26.1: calc-mode header line [UPDATED PATCH] Date: Sat, 12 Sep 2020 20:43:24 -0400 Message-ID: <20200913004324.pwpzxe74zq7sqr74@E15-2016.optimum.net> References: <20200909183127.oi3uhf6hmcswfkns@E15-2016.optimum.net> <87zh5x2tmc.fsf@gnus.org> <20200910234058.nbeslitt52h5r2po@E15-2016.optimum.net> <878sdgzeze.fsf@gnus.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="5wl2qj4dx6tbxi7h" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="7185"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: NeoMutt/20180716 Cc: 43295@debbugs.gnu.org To: Lars Ingebrigtsen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Sep 13 02:44:30 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1kHG86-0001kh-J4 for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 13 Sep 2020 02:44:30 +0200 Original-Received: from localhost ([::1]:43870 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kHG85-0003Tr-CD for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 12 Sep 2020 20:44:29 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35562) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kHG7e-0003Th-81 for bug-gnu-emacs@gnu.org; Sat, 12 Sep 2020 20:44:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:37650) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kHG7d-0000Tz-Vo for bug-gnu-emacs@gnu.org; Sat, 12 Sep 2020 20:44:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kHG7d-00028I-UX for bug-gnu-emacs@gnu.org; Sat, 12 Sep 2020 20:44:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Boruch Baum Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 13 Sep 2020 00:44:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43295 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: fixed patch Original-Received: via spool by 43295-submit@debbugs.gnu.org id=B43295.15999578178159 (code B ref 43295); Sun, 13 Sep 2020 00:44:01 +0000 Original-Received: (at 43295) by debbugs.gnu.org; 13 Sep 2020 00:43:37 +0000 Original-Received: from localhost ([127.0.0.1]:49196 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kHG7F-00027X-7W for submit@debbugs.gnu.org; Sat, 12 Sep 2020 20:43:37 -0400 Original-Received: from mout.gmx.net ([212.227.15.18]:44125) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kHG7C-00027I-4V for 43295@debbugs.gnu.org; Sat, 12 Sep 2020 20:43:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1599957807; bh=9FPbwGJ3O+02xWkUhIa+j1h6ZnSj6poSeMawqFTQjVg=; h=X-UI-Sender-Class:Date:From:To:Cc:Subject:References:In-Reply-To; b=LM5T2nBUNDZdv95Sr12nqdxMKaM6S53JMv7P19YMzw1Si86fwRghrhQk7sdzzQ1LN Fcw0c9EC2SNZEVC0C/mQDctXB5qhdUEKXaV88yK2A70AhUZJZ4Mkp9rqjsAV1yR8AQ gJUJjHUKXZ2dDbi9Tks3oysij0HuyudtrqjGG4OE= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from E15-2016.optimum.net ([72.89.170.172]) by mail.gmx.com (mrgmx004 [212.227.17.184]) with ESMTPSA (Nemesis) id 1M6Ue3-1kAOMI1N3B-006uec; Sun, 13 Sep 2020 02:43:27 +0200 Content-Disposition: inline In-Reply-To: <878sdgzeze.fsf@gnus.org> X-Provags-ID: V03:K1:eUiL9GDA4ztVR0wMrLLW7GPcV6Lx2NuYSbiOHIrZspHcEMGJ98D ugFfEviSdeDz9Qwx3ThssKD8nAWOmYruKPhG4WCiaH6rt7o77blfPKT+S2uBCzZfeMN8hrj tDMFtTniFxlgbK5SuYBbYXF0OO6yrC16DURuyBkxjmqJ3QqBTfzN6VkJRv59OJj+qImCvFS MUzEbuN3IKSjPNvY1U3ag== X-UI-Out-Filterresults: notjunk:1;V03:K0:eeMYLSp/fEg=:/nv2fddbwiaFo7kLxQy0VK reEBbYMNh27xzqfFdQwlZxjz6TJ5IGXjJNy7gw+wBKm6MRM9oQsN4xFjcTRNOgkaUfkqsI1in c4Kd0Awj/lUKURyReRe90MFWvnUCQyR+WnWyrHKzYjYdZySSBy//xeFxaXeCWGbDlct2TVH7T dO8mRtSTAgmop+/vhqpTT7BLDu742ZsMWnbrq+EyYJFsN1EDk5QjsGInsvbODWiH9WB4plk/5 NjVzWcEOsmh6ZI1RQ9vM+J5tBasPiBv845JKy3EdbB2kGIUAuTiHolCQyu2ICY/9trelJYU1S 6h31ODBkZ3+1Ip5kY9JoSFmzUJbb+/rnd/HDcb6h9SGM11sluFv5C21o3ei5pmTckjQHlg7rW yiy0IEluxML3oNaWnvoe46iPMjygy5/GSOSjdaj4hmzphrnCY1u23tlKxA6g6wOOoKhOf2skr lnyJjmBmbpNx0Q7gx/gNHtPV6UtYoZKnlBKJKdOqAXuWMZ+sW5Z+86VDZk72FFhQwktkvqxXu wOARF0mMR6dXxo7dTRxtJf3rR1uFKXU31XTQiSgsVdOgXUVmYDpL2qYhsEpxihvViTr7X/ETt cWH8GoOMI2fV0hOqeh1xVp+KvYBFv/RXCaH7XHWNsBnXpzxdbDoSfIubmgdCtIgQIkMb22Jvw diaHQ7wrEx0Yxn26WwUgVblK1ibGhWEYEOvoYpNZC7awPcLeAENyI00CTXvvl+a50RKn1P2NJ 5ErZST5/H6eZSrIRAzK53a10CKUp2Bw4W2O9sL041Hq77UdTA/tfdf1yUhyyZMP9KTYX6Uby X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:187914 Archived-At: --5wl2qj4dx6tbxi7h Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On 2020-09-11 14:15, Lars Ingebrigtsen wrote: > Could you send a new patch that has all the changes that you want that I > can just apply? Adding discussion into the patch itself isn't very > helpful. :-) In the attached patch: 1) the hunk @1421 restores the behavior that Eli wants 2) the hunk @2010 corrects the width calculation in that case 3) the hunk @2133 better handles the header line for the trail display =2D- hkp://keys.gnupg.net CA45 09B5 5351 7C11 A9D1 7286 0036 9E45 1595 8BC0 --5wl2qj4dx6tbxi7h Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="calc-003.patch" Content-Transfer-Encoding: quoted-printable =2D-- /home/optimum/calc.el 2020-09-11 15:58:55.263774535 -0400 +++ ./calc.el 2020-09-11 13:21:07.485259155 -0400 @@ -1396,8 +1396,6 @@ (let* ((len-long (length long)) (len-short (length short)) (fudge (or fudge 0)) - ;; fudge for trail is: -3 (added to len-long) - ;; (width ) for trail (factor (if (> width (+ len-long fudge)) len-long len-shor= t)) (size (/ (- width factor) 2)) (fill (make-string size ?-)) @@ -1421,13 +1419,22 @@ (make-local-variable 'overlay-arrow-string) (when calc-show-banner (calc--header-line "Emacs Calculator Trail" "Calc Trail" - (/ (window-width) 3) -3))) + (/ (window-width) 3) -3)) + (when (zerop (buffer-size)) + (let ((buffer-read-only nil)) + (insert (propertize "Emacs Calculator Trail\n" 'face 'italic))))) (defun calc-create-buffer () "Create and initialize a buffer for the Calculator." (set-buffer (get-buffer-create "*Calculator*")) (or (derived-mode-p 'calc-mode) (calc-mode)) + (when calc-show-banner + (calc--header-line "Emacs Calculator Mode" "Emacs Calc" + (if calc-display-trail + (/ (* (window-width) 2) 3) + (window-width)) + 1)) (setq max-lisp-eval-depth (max max-lisp-eval-depth 1000)) (when calc-always-load-extensions (require 'calc-ext)) @@ -2010,7 +2017,7 @@ (erase-buffer) (when calc-show-banner (calc--header-line "Emacs Calculator Mode" "Emacs Calc" - (* 2 (/ (window-width) 3)) -3)) + (window-width) 1)) (while thing (goto-char (point-min)) (insert (math-format-stack-value (car thing)) "\n") @@ -2133,29 +2140,32 @@ (defun calc-trail-display (flag &optional no-refresh interactive) (interactive "P\ni\np") (let ((win (get-buffer-window (calc-trail-buffer)))) - (if (setq calc-display-trail + (cond + ((setq calc-display-trail (not (if flag (memq flag '(nil 0)) win))) - (if (null win) - (progn + (when (null win) (if calc-trail-window-hook (run-hooks 'calc-trail-window-hook) - (let ((w (split-window nil (/ (* (window-width) 2) 3) t))= ) - (set-window-buffer w calc-trail-buffer))) + (setq win (split-window nil (/ (* (window-width) 2) 3) t)) + (set-window-buffer win calc-trail-buffer)) (calc-wrapper (setq overlay-arrow-string calc-trail-overlay overlay-arrow-position calc-trail-pointer) (or no-refresh (if interactive (calc-do-refresh) - (calc-refresh)))))) - (if win - (progn + (calc-refresh))))) + (with-current-buffer calc-trail-buffer + (when calc-show-banner + (calc--header-line "Emacs Calculator Trail" "Calc Trail" + (window-width win) -3)))) + (win ; not calc-display-trail (delete-window win) (calc-wrapper (or no-refresh (if interactive (calc-do-refresh) - (calc-refresh)))))))) + (calc-refresh))))))) calc-trail-buffer) (defun calc-trail-here () --5wl2qj4dx6tbxi7h--