unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Re: master 9ccd459e845: Enable xterm-mouse-mode by default in xterm
       [not found] ` <20241212105159.B81A566E610@vcs3.savannah.gnu.org>
@ 2024-12-12 12:21   ` Andrea Corallo
  2024-12-13  8:39   ` Michael Albinus
  1 sibling, 0 replies; 4+ messages in thread
From: Andrea Corallo @ 2024-12-12 12:21 UTC (permalink / raw)
  To: emacs-devel; +Cc: Jared Finder

Eli Zaretskii <eliz@gnu.org> writes:

> branch: master
> commit 9ccd459e8452cc9e6e81e53f26bbeef20d2d5bb7
> Author: Jared Finder <jared@finder.org>
> Commit: Eli Zaretskii <eliz@gnu.org>
>
>     Enable xterm-mouse-mode by default in xterm
>     
>     * lisp/xt-mouse.el (xterm-mouse-mode): Change default value of
>     xterm-mouse-mode to t.
>     * lisp/term/xterm.el (xterm--init): Enable xterm-mouse-mode if
>     the default value is still set.
>     * etc/NEWS: Document new behavior.

Hi Jared,

this introducing in my GNU/Linux build:

FAILED  3/3  xt-mouse-tracking-utf-8 (0.000543 sec) at lisp/xt-mouse-tests.el:79                                                                 
FAILED  2/3  xt-mouse-tracking-sgr (0.000810 sec) at lisp/xt-mouse-tests.el:101                                                                  
FAILED  1/3  xt-mouse-tracking-basic (0.228961 sec) at lisp/xt-mouse-tests.el:60

could you have a look?

More details below

Thanks

  Andrea


Test xt-mouse-tracking-basic backtrace:                                                                                                                                                    
  signal(ert-test-failed (((should (terminal-parameter nil 'xterm-mous                                                                                                                     
  ert-fail(((should (terminal-parameter nil 'xterm-mouse-mode)) :form                                                                                                                      
  #f(compiled-function () #<bytecode 0xcaea9a576e5cb44>)()                                                                                                                                 
  #f(compiled-function () #<bytecode -0xc1ae07004a64ed3>)()                                                                                                                                
  handler-bind-1(#f(compiled-function () #<bytecode -0xc1ae07004a64ed3                                                                                                                     
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test                                                                                                                     
  ert-run-test(#s(ert-test :name xt-mouse-tracking-basic :documentatio                                                                                                                     
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or (tag :expensi                                                                                                                     
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable) (tag :n                                                                                                                     
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable) (                                                                                                                     
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un                                                                                                                     
  eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (                                                                                                                     
  command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l                                                                                                                     
  command-line()                                                                                                                                                                           
  normal-top-level()                                                                                                                                                                       
Test xt-mouse-tracking-basic condition:                                                                                                                                                    
    (ert-test-failed                                                                                                                                                                       
     ((should (terminal-parameter nil 'xterm-mouse-mode)) :form                                                                                                                            
      (terminal-parameter nil xterm-mouse-mode) :value nil))                                                                                                                               
   FAILED  1/3  xt-mouse-tracking-basic (0.220402 sec) at lisp/xt-mouse-tests.el:60                                                                                                        
Test xt-mouse-tracking-sgr backtrace:                                                                                                                                                      
  signal(ert-test-failed (((should (terminal-parameter nil 'xterm-mous                                                                                                                     
  ert-fail(((should (terminal-parameter nil 'xterm-mouse-mode)) :form                                                                                                                      
  #f(compiled-function () #<bytecode 0xadf3ba82df72fe8>)()                                                                                                                                 
  #f(compiled-function () #<bytecode -0xc1ae07004a64ed3>)()                                                                                                                                
  handler-bind-1(#f(compiled-function () #<bytecode -0xc1ae07004a64ed3                                                                                                                     
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test                                                                                                                     
  ert-run-test(#s(ert-test :name xt-mouse-tracking-sgr :documentation                                                                                                                      
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or ... ... ...))                                                                                                                     
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable) (tag :n                                                                                                                     
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable) (                                                                                                                     
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un                                                                                                                     
  eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (                                                                                                                     
  command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l                                                                                                                     
  command-line()                                                                                                                                                                           
  normal-top-level()
Test xt-mouse-tracking-sgr condition:                                                                                                                                                      
    (ert-test-failed                                                                                                                                                                       
     ((should (terminal-parameter nil 'xterm-mouse-mode)) :form                                                                                                                            
      (terminal-parameter nil xterm-mouse-mode) :value nil))                                                                                                                               
   FAILED  2/3  xt-mouse-tracking-sgr (0.000581 sec) at lisp/xt-mouse-tests.el:101                                                                                                         
Test xt-mouse-tracking-utf-8 backtrace:                                                                                                                                                    
  signal(ert-test-failed (((should (terminal-parameter nil 'xterm-mous                                                                                                                     
  ert-fail(((should (terminal-parameter nil 'xterm-mouse-mode)) :form                                                                                                                      
  #f(compiled-function () #<bytecode -0x1be7e949ea0313ce>)()                                                                                                                               
  #f(compiled-function () #<bytecode -0xc1ae07004a64ed3>)()                                                                                                                                
  handler-bind-1(#f(compiled-function () #<bytecode -0xc1ae07004a64ed3                                                                                                                     
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test                                                                                                                     
  ert-run-test(#s(ert-test :name xt-mouse-tracking-utf-8 :documentatio                                                                                                                     
  ert-run-or-rerun-test(#s(ert--stats :selector (not ...) :tests [...                                                                                                                      
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable) (tag :n                                                                                                                     
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable) (                                                                                                                     
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un                                                                                                                     
  eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (                                                                                                                     
  command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l                                                                                                                     
  command-line()                                                                                                                                                                           
  normal-top-level()                                                                                                                                                                       
Test xt-mouse-tracking-utf-8 condition:                                                                                                                                                    
    (ert-test-failed                                                                                                                                                                       
     ((should (terminal-parameter nil 'xterm-mouse-mode)) :form                                                                                                                            
      (terminal-parameter nil xterm-mouse-mode) :value nil)) 



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: master 9ccd459e845: Enable xterm-mouse-mode by default in xterm
       [not found] ` <20241212105159.B81A566E610@vcs3.savannah.gnu.org>
  2024-12-12 12:21   ` master 9ccd459e845: Enable xterm-mouse-mode by default in xterm Andrea Corallo
@ 2024-12-13  8:39   ` Michael Albinus
  2024-12-14  5:03     ` Jared Finder
  1 sibling, 1 reply; 4+ messages in thread
From: Michael Albinus @ 2024-12-13  8:39 UTC (permalink / raw)
  To: emacs-devel; +Cc: Jared Finder

[-- Attachment #1: Type: text/plain, Size: 986 bytes --]

Eli Zaretskii <eliz@gnu.org> writes:

Hi,

> branch: master
> commit 9ccd459e8452cc9e6e81e53f26bbeef20d2d5bb7
> Author: Jared Finder <jared@finder.org>
> Commit: Eli Zaretskii <eliz@gnu.org>
>
>     Enable xterm-mouse-mode by default in xterm
>
>     * lisp/xt-mouse.el (xterm-mouse-mode): Change default value of
>     xterm-mouse-mode to t.
>     * lisp/term/xterm.el (xterm--init): Enable xterm-mouse-mode if
>     the default value is still set.
>     * etc/NEWS: Document new behavior.

This fails xt-mouse-tests:

--8<---------------cut here---------------start------------->8---
# make -C test xt-mouse-tests.log

Ran 3 tests, 0 results as expected, 3 unexpected (2024-12-13 09:35:08+0100, 1.359088 sec)

3 unexpected results:
   FAILED  xt-mouse-tracking-basic
   FAILED  xt-mouse-tracking-sgr
   FAILED  xt-mouse-tracking-utf-8
--8<---------------cut here---------------end--------------->8---

See appended log file.

Best regards, Michael.


[-- Attachment #2: xt-mouse-tests.log --]
[-- Type: text/plain, Size: 6648 bytes --]

Running 3 tests (2024-12-13 09:35:06+0100, selector `(not (tag :unstable))')
Test xt-mouse-tracking-basic backtrace:
  signal(ert-test-failed (((should (terminal-parameter nil 'xterm-mous
  ert-fail(((should (terminal-parameter nil 'xterm-mouse-mode)) :form
  (if (unwind-protect (setq value-14 (apply fn-12 args-13)) (setq form
  (let (form-description-16) (if (unwind-protect (setq value-14 (apply
  (let ((value-14 'ert-form-evaluation-aborted-15)) (let (form-descrip
  (let* ((fn-12 #'terminal-parameter) (args-13 (condition-case err (li
  (progn (let ((value-10 (gensym "ert-form-evaluation-aborted-"))) (le
  (if xterm-mouse-mode (progn (let ((value-10 (gensym "ert-form-evalua
  (progn (set-terminal-parameter nil 'xterm-mouse-last-click nil) (set
  (unwind-protect (progn (set-terminal-parameter nil 'xterm-mouse-last
  (let* ((old (terminal-parameter nil 'xterm-mouse-last-click)) (old (
  (progn (set-frame-width nil (max width 2000)) (set-frame-height nil
  (unwind-protect (progn (set-frame-width nil (max width 2000)) (set-f
  (let ((width (frame-width)) (height (frame-height))) (unwind-protect
  #f(lambda () [t] (let* ((fn-0 #'equal) (args-1 (condition-case err .
  #f(compiled-function () #<bytecode -0x3549b7f7f1fe0b7>)()
  handler-bind-1(#f(compiled-function () #<bytecode -0x3549b7f7f1fe0b7
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name xt-mouse-tracking-basic :documentatio
  ert-run-or-rerun-test(#s(ert--stats :selector (not ...) :tests [...
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))) t)
  command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
  command-line()
  normal-top-level()
Test xt-mouse-tracking-basic condition:
    (ert-test-failed
     ((should (terminal-parameter nil 'xterm-mouse-mode)) :form
      (terminal-parameter nil xterm-mouse-mode) :value nil))
   FAILED  1/3  xt-mouse-tracking-basic (0.170322 sec) at lisp/xt-mouse-tests.el:60
Test xt-mouse-tracking-sgr backtrace:
  signal(ert-test-failed (((should (terminal-parameter nil 'xterm-mous
  ert-fail(((should (terminal-parameter nil 'xterm-mouse-mode)) :form
  (if (unwind-protect (setq value-152 (apply fn-150 args-151)) (setq f
  (let (form-description-154) (if (unwind-protect (setq value-152 (app
  (let ((value-152 'ert-form-evaluation-aborted-153)) (let (form-descr
  (let* ((fn-150 #'terminal-parameter) (args-151 (condition-case err (
  (progn (let ((value-148 (gensym "ert-form-evaluation-aborted-"))) (l
  (if xterm-mouse-mode (progn (let ((value-148 (gensym "ert-form-evalu
  (progn (set-terminal-parameter nil 'xterm-mouse-last-click nil) (set
  (unwind-protect (progn (set-terminal-parameter nil 'xterm-mouse-last
  (let* ((old (terminal-parameter nil 'xterm-mouse-last-click)) (old (
  (progn (set-frame-width nil (max width 2000)) (set-frame-height nil
  (unwind-protect (progn (set-frame-width nil (max width 2000)) (set-f
  (let ((width (frame-width)) (height (frame-height))) (unwind-protect
  #f(lambda () [t] (let ((width (frame-width)) (height (frame-height))
  #f(compiled-function () #<bytecode -0x3549b7f7f1fe0b7>)()
  handler-bind-1(#f(compiled-function () #<bytecode -0x3549b7f7f1fe0b7
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name xt-mouse-tracking-sgr :documentation
  ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))) t)
  command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
  command-line()
  normal-top-level()
Test xt-mouse-tracking-sgr condition:
    (ert-test-failed
     ((should (terminal-parameter nil 'xterm-mouse-mode)) :form
      (terminal-parameter nil xterm-mouse-mode) :value nil))
   FAILED  2/3  xt-mouse-tracking-sgr (0.000246 sec) at lisp/xt-mouse-tests.el:101
Test xt-mouse-tracking-utf-8 backtrace:
  signal(ert-test-failed (((should (terminal-parameter nil 'xterm-mous
  ert-fail(((should (terminal-parameter nil 'xterm-mouse-mode)) :form
  (if (unwind-protect (setq value-88 (apply fn-86 args-87)) (setq form
  (let (form-description-90) (if (unwind-protect (setq value-88 (apply
  (let ((value-88 'ert-form-evaluation-aborted-89)) (let (form-descrip
  (let* ((fn-86 #'terminal-parameter) (args-87 (condition-case err (li
  (progn (let ((value-84 (gensym "ert-form-evaluation-aborted-"))) (le
  (if xterm-mouse-mode (progn (let ((value-84 (gensym "ert-form-evalua
  (progn (set-terminal-parameter nil 'xterm-mouse-last-click nil) (set
  (unwind-protect (progn (set-terminal-parameter nil 'xterm-mouse-last
  (let* ((old (terminal-parameter nil 'xterm-mouse-last-click)) (old (
  (progn (set-frame-width nil (max width 2000)) (set-frame-height nil
  (unwind-protect (progn (set-frame-width nil (max width 2000)) (set-f
  (let ((width (frame-width)) (height (frame-height))) (unwind-protect
  (let ((xterm-mouse-utf-8 t)) (let* ((fn-74 #'equal) (args-75 (condit
  #f(lambda () [t] (let ((xterm-mouse-utf-8 t)) (let* ((fn-74 ...) (ar
  #f(compiled-function () #<bytecode -0x3549b7f7f1fe0b7>)()
  handler-bind-1(#f(compiled-function () #<bytecode -0x3549b7f7f1fe0b7
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name xt-mouse-tracking-utf-8 :documentatio
  ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))) t)
  command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
  command-line()
  normal-top-level()
Test xt-mouse-tracking-utf-8 condition:
    (ert-test-failed
     ((should (terminal-parameter nil 'xterm-mouse-mode)) :form
      (terminal-parameter nil xterm-mouse-mode) :value nil))
   FAILED  3/3  xt-mouse-tracking-utf-8 (0.000274 sec) at lisp/xt-mouse-tests.el:79

Ran 3 tests, 0 results as expected, 3 unexpected (2024-12-13 09:35:08+0100, 1.359088 sec)

3 unexpected results:
   FAILED  xt-mouse-tracking-basic
   FAILED  xt-mouse-tracking-sgr
   FAILED  xt-mouse-tracking-utf-8


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: master 9ccd459e845: Enable xterm-mouse-mode by default in xterm
  2024-12-13  8:39   ` Michael Albinus
@ 2024-12-14  5:03     ` Jared Finder
  2024-12-14  8:42       ` Michael Albinus
  0 siblings, 1 reply; 4+ messages in thread
From: Jared Finder @ 2024-12-14  5:03 UTC (permalink / raw)
  To: Michael Albinus; +Cc: emacs-devel

[-- Attachment #1: Type: text/plain, Size: 1337 bytes --]

On 2024-12-13 00:39, Michael Albinus wrote:
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> Hi,
> 
>> branch: master
>> commit 9ccd459e8452cc9e6e81e53f26bbeef20d2d5bb7
>> Author: Jared Finder <jared@finder.org>
>> Commit: Eli Zaretskii <eliz@gnu.org>
>> 
>>     Enable xterm-mouse-mode by default in xterm
>> 
>>     * lisp/xt-mouse.el (xterm-mouse-mode): Change default value of
>>     xterm-mouse-mode to t.
>>     * lisp/term/xterm.el (xterm--init): Enable xterm-mouse-mode if
>>     the default value is still set.
>>     * etc/NEWS: Document new behavior.
> 
> This fails xt-mouse-tests:
> 
> --8<---------------cut here---------------start------------->8---
> # make -C test xt-mouse-tests.log
> 
> Ran 3 tests, 0 results as expected, 3 unexpected (2024-12-13 
> 09:35:08+0100, 1.359088 sec)
> 
> 3 unexpected results:
>    FAILED  xt-mouse-tracking-basic
>    FAILED  xt-mouse-tracking-sgr
>    FAILED  xt-mouse-tracking-utf-8
> --8<---------------cut here---------------end--------------->8---

Apologies for that. Attached is a fix for the test. Unfortunately, for 
some reason I don't quite understand xt-mouse-tests.el does not work 
when called inside a running Emacs session. It only works when called in 
batch mode. This limitation predates turning xterm-mouse-mode on by 
default, so I just added a FIXME for that.

   -- MJF

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Fix-for-xt-mouse-tests.el-broken-in-prior-commit.patch --]
[-- Type: text/x-diff; name=0001-Fix-for-xt-mouse-tests.el-broken-in-prior-commit.patch, Size: 2640 bytes --]

From 0f4143d26b805f83c1dd47a8720f2db426800a05 Mon Sep 17 00:00:00 2001
From: Jared Finder <jared@finder.org>
Date: Fri, 13 Dec 2024 20:59:50 -0800
Subject: [PATCH] Fix for xt-mouse-tests.el broken in prior commit

xt-mouse-tests not turning on xterm-mouse-mode if it was already
on did not work with xterm-mouse-mode being set to t by default.
It turns out that xt-mouse-tests already does not report proper
results when called inside a running Emacs session so the code
path is not useful anyways.

* test/lisp/xt-mouse-tests.el (with-xterm-mouse-mode): Always
turn on xterm-mouse-mode, even if it is already on.
---
 test/lisp/xt-mouse-tests.el | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/test/lisp/xt-mouse-tests.el b/test/lisp/xt-mouse-tests.el
index cfc8042f796..f64b3aed73e 100644
--- a/test/lisp/xt-mouse-tests.el
+++ b/test/lisp/xt-mouse-tests.el
@@ -25,6 +25,8 @@
 
 (require 'xt-mouse)
 
+;; FIXME: this doesn't work when called inside a non-batch mode Emacs
+;; session.
 (defmacro with-xterm-mouse-mode (&rest body)
   "Run BODY with `xterm-mouse-mode' temporarily enabled."
   (declare (indent 0))
@@ -42,18 +44,16 @@ with-xterm-mouse-mode
                      ((terminal-parameter nil 'xterm-mouse-y) nil)
                      ((terminal-parameter nil 'xterm-mouse-last-down) nil)
                      ((terminal-parameter nil 'xterm-mouse-last-click) nil))
-             (if xterm-mouse-mode
-                 ,(macroexp-progn body)
-               (unwind-protect
-                   (progn
-                     ;; `xterm-mouse-mode' doesn't work in the initial
-                     ;; terminal.  Since we can't create a second
-                     ;; terminal in batch mode, fake it temporarily.
-                     (cl-letf (((symbol-function 'terminal-name)
-                                (lambda (&optional _terminal) "fake-terminal")))
-                       (xterm-mouse-mode))
-                     ,@body)
-                 (xterm-mouse-mode 0)))))
+             (unwind-protect
+                 (progn
+                   ;; `xterm-mouse-mode' doesn't work in the initial
+                   ;; terminal.  Since we can't create a second
+                   ;; terminal in batch mode, fake it temporarily.
+                   (cl-letf (((symbol-function 'terminal-name)
+                              (lambda (&optional _terminal) "fake-terminal")))
+                     (xterm-mouse-mode 1))
+                   ,@body)
+               (xterm-mouse-mode 0))))
        (set-frame-width nil width)
        (set-frame-height nil height))))
 
-- 
2.39.5


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: master 9ccd459e845: Enable xterm-mouse-mode by default in xterm
  2024-12-14  5:03     ` Jared Finder
@ 2024-12-14  8:42       ` Michael Albinus
  0 siblings, 0 replies; 4+ messages in thread
From: Michael Albinus @ 2024-12-14  8:42 UTC (permalink / raw)
  To: Jared Finder; +Cc: emacs-devel

Jared Finder <jared@finder.org> writes:

Hi Jared,

> Apologies for that. Attached is a fix for the test.

Thanks for the fix, I've pushed it to master.

> Unfortunately, for some reason I don't quite understand
> xt-mouse-tests.el does not work when called inside a running Emacs
> session. It only works when called in batch mode. This limitation
> predates turning xterm-mouse-mode on by default, so I just added a
> FIXME for that.

I've modified with-xterm-mouse-mode, it ceases now to work when Emacs
runs in interactive mode. Also pushed to master.

>   -- MJF

Best regards, Michael.



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2024-12-14  8:42 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <173400071920.1603224.9897683501673718041@vcs3.savannah.gnu.org>
     [not found] ` <20241212105159.B81A566E610@vcs3.savannah.gnu.org>
2024-12-12 12:21   ` master 9ccd459e845: Enable xterm-mouse-mode by default in xterm Andrea Corallo
2024-12-13  8:39   ` Michael Albinus
2024-12-14  5:03     ` Jared Finder
2024-12-14  8:42       ` Michael Albinus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).