Skip to content

Commit 01277af

Browse files
author
Justin Lewis
committed
BUG: Fix Py2 unicode handling in clipboard
1 parent 5e2f9da commit 01277af

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

pandas/io/clipboard.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
""" io on the clipboard """
22
from pandas import compat, get_option, option_context, DataFrame
3-
from pandas.compat import StringIO
3+
from pandas.compat import StringIO, PY2
44

55

66
def read_clipboard(**kwargs): # pragma: no cover
@@ -75,16 +75,16 @@ def to_clipboard(obj, excel=None, sep=None, **kwargs): # pragma: no cover
7575
- OS X:
7676
"""
7777
from pandas.util.clipboard import clipboard_set
78-
if excel is None:
79-
excel = True
8078

81-
if excel:
79+
if excel in (None, True):
8280
try:
83-
if sep is None:
84-
sep = '\t'
8581
buf = StringIO()
86-
obj.to_csv(buf, sep=sep, **kwargs)
87-
clipboard_set(buf.getvalue())
82+
# clipboard_set (pyperclip) expects unicode
83+
obj.to_csv(buf, sep=sep or '\t', encoding='utf-8', **kwargs)
84+
text = buf.getvalue()
85+
if PY2:
86+
text = text.decode('utf-8')
87+
clipboard_set(text)
8888
return
8989
except:
9090
pass

0 commit comments

Comments
 (0)