On Thu, Dec 4, 2008 at 12:00 PM, Brian Dessent <[EMAIL PROTECTED]> wrote: > Jonathon Merz wrote: > >> I recently upgraded from rxvt-20050409-7 to rxvt-20050409-9 and have >> stopped getting different output for Backspace and Control-Backspace. >> In rxvt-20050409-7, I get ^? for Backspace and ^H for >> Control-Backspace. In rxvt-20050409-9, I get ^H for both. >> >> I've tried explicitly setting the rxvt backspacekey to ^?, but then I >> get ^? both with and without the Control key. > > I guess the first question is are you using rxvt in native (GDI/W11) or > X11 mode. I can't see that much has changed in the patches other than > tweaks to use the new modular X11 server. So if you are using GDI mode, > then I'm at a loss to explain the differences, however if you are using > X11 mode then it's highly likely that the difference in behavior is due > to the many changes in the new X server and not anything in rxvt. You > should follow up on the cygwin-xfree@ list if that is the case.
Oops, I forgot to make that distinction. I am running rxvt in native mode without X. >> I've also been trying to decipher some of the documentation for >> terminfo/termcap, though I'm having trouble wrapping my mind around >> those, and I'm not certain whether that is the path I should go down >> since my terminfo appears to be unchanged between the two. For what >> it's worth, I tried running infocmp on both the -7 and -9 versions and >> got identical output for them both. > > I think terminfo/termcap are irrelevant here as their purpose is to > describe behavior, not to change it. They might document for example > that terminal FOO generates the byte sequence BAR when the user presses > key X so that programs can know that when TERM=FOO and the sequence BAR > appears in the input stream that the user has in fact pressed X. But > they can't alter the terminal's behavior to make it generate a different > sequence. Thanks for clearing me up on that - I suspect I would have spent a lot of time with little benefit. After further fiddling, I've at least figured out what's going on, but I'm still not sure why. It appears that the change between rxvt-20050409-7 and rxvt-20050409-9 that has made the difference is in the patch for src/rxvt/src/feature.h changing: # define X11USRLIBDIR "/usr/lib" to: # define X11USRLIBDIR "/etc" The new definition causes rxvt to be able to find the Rxvt default resources file (a good thing! :) which in both -7 and -9 is found at /etc/X11/app-defaults/Rxvt. In -7, it appears that rxvt was looking for that file at /usr/lib/X11/app-defaults/Rxvt, where it did not exist. That's the part I understand. The part that I don't understand is that the problem appears to be the line: Rxvt.backspacekey: ^H in /etc/X11/app-defaults/Rxvt. It appears that the Rxvt.backspacekey resource sets the value for both <Backspace> and <Control-Backspace>. If I comment that line out, rxvt works as I wish it to (i.e. <Backspace> gives ^? and <Control-Backspace> gives ^H). If I leave that line in, rxvt gives ^H for both, and if I either change it to ^? or set that resource to ^? in my ~/.Xdefaults, I always get ^? both with and without the Control key. My new questions then, are: Is this correct/expected behavior? and Is there any way I can "unset" in my ~/.Xdefaults or somewhere like that a resource that is set in a system resource file so that I can avoid modifying the system-wide one? Thanks again, -Jon -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/