Antoine Levy-Lambert wrote: > > David Rothenberger wrote : > >Any suggestions would be appreciated, even if its just "try looking at > >somefile.c". I don't mind investigation and can go with limited info; > >I'm just out of ideas now. > One idea would be to look at the source code of xemacs. > I presume that the copy and paste functions of xemacs (key combinations > Esc-W and C-y) are lisp functions which call directly or indirectly C API > functions. > Looking at these function calls would begin to shed light on the problem. > The other question on the cygwin side : what is the official or recommended > way of accessing the cut and paste buffer for an application written in C > (xemacs) and running under Windows+cygwin. > > When we will have answers to both these questions, we can determine whether > : > - xemacs was using an undocumented feature of cygwin to interact with the > Windows cut and paste buffer, or whether the official cygwin API has > changed, > - other option : to the contrary, xemacs is programmed properly and there > has been a mistake in the code changes done in cygwin between 1.3.x and 1.5 > > I would be delighted to help, but I am busy at the moment, so I do not make > any promise.
I'm inclined to look at Cygwin sources first. a) XEmacs and rxvt are both misbehaving and in a similar way. b) Both XEmacs and rxvt work correctly with the old DLL and when started from an rxvt window. rxvt was not modified when it was recompiled for the 1.5.x series, yet its behavior changed. So I think that it is something in the cygwin dll that is the problem (pure guess here). My next step is to understand more about what CYGWIN=tty really does in the code. I think an interesting clue is that two rxvt windows started from the same console bash process can copy/paste between one another, but not with Windows apps or with rxvt windows started from different bash processes. I know very little about how the Windows clipboard works, so I don't know how to even accomplish that kind of behavior. But, perhaps learning how one would intentionally do that would help learn why its happening with rxvt and XEmacs. Also interesting is that XEmacs behaves in much the same way. For me at least, XEmacs copy/paste works great UNTIL I start a *shell* window. (Note that starting subprocesses is not enough; I have to start the shell mode. Perhaps something to do with pipes and ttys?) Before the *shell* window is started, XEmacs interacts with Windows. Afterwards, it won't. It will copy/paste with other XEmacsen started from the same console bash process, but only if those that have also started a *shell* window! So, perhaps learning more about how the *shell* mode initializes itself would also be useful. Dave -- 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/