emacs-devel
[Top][All Lists]
Advanced

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

Re: PRIMARY selection doesn't work


From: Eli Zaretskii
Subject: Re: PRIMARY selection doesn't work
Date: Sat, 04 May 2002 10:31:53 +0300

> From: address@hidden (Michael Kifer)
> Date: Sat, 20 Apr 2002 13:49:27 -0400
> 
>     EZ> Do you see any change in behavior if you change the value of
>     EZ> selection-coding-system?  For example, what happens if you type
>     EZ> "C-x RET x latin-1 RET" and then mark a region of pure ASCII
>     EZ> characters and type "M-w"--can you paste that text into other
>     EZ> applications?  Please also try with "C-x RET x compound-text RET".
> 
> Absolutely -- it starts working!
> Both latin-1 and compound-text work.

Please see if the patch below solves the problem if you revert
selection-coding-system to compound-text-with-extensions.  Please try
that both with pure ASCII text and some non-ASCII text in the
selection.

TIA

Index: src/xselect.c
===================================================================
RCS file: /cvs/emacs/src/xselect.c,v
retrieving revision 1.113
diff -c -p -r1.113 xselect.c
*** src/xselect.c       4 Mar 2002 23:40:59 -0000       1.113
--- src/xselect.c       4 May 2002 07:29:54 -0000
*************** lisp_data_to_selection_data (display, ob
*** 1765,1775 ****
        *data_ret = x_encode_text (obj, Vnext_selection_coding_system, 1,
                                 (int *) size_ret, &stringp);
        *nofree_ret = (*data_ret == XSTRING (obj)->data);
!       if (EQ (Vnext_selection_coding_system,
!             Qcompound_text_with_extensions))
!       type = QCOMPOUND_TEXT;
!       else if (NILP (type))
!       type = (stringp ? QSTRING : QCOMPOUND_TEXT);
        Vlast_coding_system_used = (*nofree_ret
                                  ? Qraw_text
                                  : Vnext_selection_coding_system);
--- 1765,1780 ----
        *data_ret = x_encode_text (obj, Vnext_selection_coding_system, 1,
                                 (int *) size_ret, &stringp);
        *nofree_ret = (*data_ret == XSTRING (obj)->data);
!       if (NILP (type))
!       {
!         if (stringp && *nofree_ret)
!           type = QSTRING;
!         else if (EQ (Vnext_selection_coding_system,
!                      Qcompound_text_with_extensions))
!           type = QCOMPOUND_TEXT;
!         else
!           type = (stringp ? QSTRING : QCOMPOUND_TEXT);
!       }
        Vlast_coding_system_used = (*nofree_ret
                                  ? Qraw_text
                                  : Vnext_selection_coding_system);



reply via email to

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