[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Need help to debug bugs(#22989, #23412)

From: HaiJun Zhang
Subject: Re: Need help to debug bugs(#22989, #23412)
Date: Sun, 27 Oct 2019 05:23:23 +0000

Now I describe the problem with the attachment picture.

There are two red arrows in the picture. The left one is the original position. The right one is the new position. And the cursor is at the right one.

After input another char, the cursor first goes to the left arrow position, and then quickly goes to the right arrow position, which makes the flicker.
在 2019年10月27日 +0800 AM11:11,HaiJun Zhang <address@hidden>,写道:
They are related with the Chinese or Japanese input method on macOS. The bug appeared after this commit: http://git.savannah.gnu.org/cgit/emacs.git/commit/?h=emacs-25.1&id=9e77c1b7bcfd0807be7fe67daf73c2320e864309.

The workaround is setting `redisplay-dont-pause’ to nil. But this variable is obsolete since 24.5.

I think the cause may be like this:
On every char inputting, the input method triggers two events to emacs. The first event causes emacs to redisplay the window with cursor at the original position. The second event causes emacs to redisplay the window with cursor at the new position. The two redisplay make the cursor flicker. The problem is the first redisplay which is not wanted.

If `redisplay-dont-pause’ is t, the first redisplay may be cancelled or merged with the second one?

How to debug this problem? I want to first print the value of the variable `c’ in read_char() in keybord.c. Its type is Lisp_Object. How to print its value?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]