summaryrefslogtreecommitdiff
path: root/cmd2.py
diff options
context:
space:
mode:
Diffstat (limited to 'cmd2.py')
-rwxr-xr-xcmd2.py17
1 files changed, 14 insertions, 3 deletions
diff --git a/cmd2.py b/cmd2.py
index c19c54ec..65b7eeee 100755
--- a/cmd2.py
+++ b/cmd2.py
@@ -415,7 +415,11 @@ else:
"""
xclipproc = subprocess.Popen('xclip -o -sel clip', shell=True, stdout=subprocess.PIPE,
stdin=subprocess.PIPE)
- return xclipproc.stdout.read()
+ stdout, stderr = xclipproc.communicate()
+ if six.PY3:
+ return stdout.decode()
+ else:
+ return stdout
def write_to_paste_buffer(txt):
"""Paste text to the clipboard for Linux OSes.
@@ -423,11 +427,18 @@ else:
:param txt: str - text to paste to the clipboard
"""
xclipproc = subprocess.Popen('xclip -sel clip', shell=True, stdout=subprocess.PIPE, stdin=subprocess.PIPE)
- xclipproc.stdin.write(txt.encode())
+ if six.PY3:
+ xclipproc.stdin.write(txt.encode())
+ else:
+ xclipproc.stdin.write(txt)
xclipproc.stdin.close()
+
# but we want it in both the "primary" and "mouse" clipboards
xclipproc = subprocess.Popen('xclip', shell=True, stdout=subprocess.PIPE, stdin=subprocess.PIPE)
- xclipproc.stdin.write(txt.encode())
+ if six.PY3:
+ xclipproc.stdin.write(txt.encode())
+ else:
+ xclipproc.stdin.write(txt)
xclipproc.stdin.close()
else:
# noinspection PyUnusedLocal