On Mon, 17 May 2010, The Anarcat wrote:
On Thu, May 13, 2010 at 07:44:57PM -0400, Thomas Dickey wrote:
(by the way, patch #258 simply plugs a hole which seems that it should
have appeared in #256 or before, the changes in this bug report come from #257)
(Yes, I have marked 256 as not affected because it's the version I know
as working, 257 may also be affected by the bug, I haven't tested it.)
This report sounds like two bugs:
a) patch #257 introduces a binding for Scroll_Lock. While I did make the
feature
configurable (a compile-time ifdef could remove it entirely, or a resource
can
disable most of the feature), I overlooked the fact that other people would
be
using this orphaned key as well.
I see.
yes... if I'd considered that aspect, I'd have defaults the resource to
false.
For a quick workaround - if you set allowScrollOps resource to false, is the
intercept of the key still interfering with your use of it?
Yes, that doesn't fix the problem:
XTerm*allowScrollOps: false
UXTerm*allowScrollOps: false
sorry for the confusion - I did correct my typo in a followup.
The resource is allowScrollLock:
allowScrollLock (class AllowScrollLock)
Specifies whether control sequences that set/query the Scroll
Lock key should be allowed, as well as whether the Scroll Lock
key responds to user's keypress. The default is "true."
(if it is still interfering, I'll have to make the feature configurability
different, e.g., by deciding whether to add it to the translations
dynamically).
(I'm not sure what the "translations" are, but I feel this should be
fixed in the next release, regardless of the way of doing it. removing
it entirely until a better fix is found would be the option I would
suggest, but then I am in a rather biased position. :P I would say
however that I'll switch away from xterm if this issue isn't fixed. As
things stand, I run the older version because the situation is rather
intolerable. :)
I noticed something else with the bug. Hitting scroll lock doesn't
"unfreeze" the terminal (it doesn't remove the lock). But focusing out
of the window, hitting scroll lock, and focusing back again *does* fix
the issue. So it's as if the scroll lock status was read only when
focusing in our out of the window. This seems like the wrong way to do
things in my opinion: xterm should just catch "keydown" events on that
key.
I agree that if it did that, then you probably would not see the problem
at all, since your keyboard configuration is apparently not passing the
keypresses.
The focus aspect came about because if there is more than one terminal on
the screen, it's unclear (otherwise) to which terminal the scroll lock
applies. (In development I considered instead clearing the scroll lock
when exiting a window, but found this to work inconsistently). But
sensing the LED light on entry to the window seems to work well enough.
On the other hand, the focus aspect is supposed to go away when the
resource is false.
xterm would still be passed an event (which it discards) when the resource
is false. I'm uncertain whether this event would interfere with your use
of the ScrollLock key - which is why I asked about the workaround.
Arguably, if Xorg is handling scroll lock through XKB, it shouldn't let
that keypress propagate further either...
b) the scroll-lock feature doesn't work with fast-scrolling.
Fixing this may take more time than (a), so I'm inclined to focus on being
able
to enable/disable the feature with low impact.
I would like this issue to be processed in a seperate bug report, as it
is unrelated to this one, AFAIK.
A.
--
La nature n'a cr?? ni ma?tres ni esclaves
Je ne veux ni donner ni recevoir de lois.
- Denis Diderot
--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net