As far as copying from cygwin to windows is concerned, it happens in exactly 
the same way in all windows programs I tried pasting data to - word, outlook, 
chrome, console, you name it. Changing windows keyboard language has no effect 
either, windows still stubbornly treats clipboard contents as cp1252 (don't 
quite see how it is supposed to help - data on the clipboard is not limited to 
one single-byte codepage anyway). 

At first I missed that when copying from windows to cygwin getclip actually 
gets data in cp1251 (windows ANSI codepage), thus cyrillic characters can be at 
least recovered with iconv, but non-cyrillic non-latin characters - e.g. greek, 
are replaced with question marks and are lost although in windows everything 
can be pasted back without issues, again regardless of the program and keyboard 
language.

So in a nutshell, when copy-pasting from cygwin putclip to windows unicode is 
treated as cp1252 while copy-pasting from windows to cygwin getclip unicode is 
treated as cp1251.

Sorry for top-posting.

-----Original Message-----
From: Andrey Repin <anrdae...@yandex.ru> 
Sent: Thursday, June 24, 2021 9:36 AM
To: Миронов Леонид Владимирович <lv.miro...@severstal.com>; cygwin@cygwin.com
Subject: Re: getclip and putclip garble unicode characters

Greetings, Миронов Леонид Владимирович!

> getclip and putclip from cygutils-extra garble unicode characters:
> non-latin characters copied to clipboard in windows are replaced with 
> question marks when retrieved with getclip in cygwin, and non-latin 
> characters copied to clipboard using putclip are pasted it in windows 
> looking like utf-8 displayed in cp1252 but can be retrieved with 
> getclip exactly as pasted, so it looks like the problem is not in the 
> way the data is copied but in the way cygwin and windows communicate 
> text encoding to each other. LC_CTYPE=en_US.UTF-8, windows ANSI codepage is 
> set to cp1251 - 1251, not 1252.

This looks like you are using a program incapable of dealing with unicode 
clipboard. To achieve better results, switch your input language/keyboard to 
matching language before copying text from application. I.e. switch to Russian 
then copy text, then check what is returned by getclip.
But then, why LC_CTYPE is en_US?


--
With best regards,
Andrey Repin
Thursday, June 24, 2021 9:33:54

Sorry for my terrible english...

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
  • getclip an... Миронов Леонид Владимирович via Cygwin
    • Re: g... Mark Geisert
    • Re: g... Andrey Repin via Cygwin
      • R... Миронов Леонид Владимирович via Cygwin
      • R... Thomas Wolff
        • ... Brian Inglis

Reply via email to