import termios
from portage import os, _unicode_decode, _unicode_encode
+from portage.output import get_term_size, set_term_size
from portage.process import spawn_bash
from portage.util import writemsg
if _disable_openpty:
master_fd, slave_fd = os.pipe()
else:
- from pty import openpty
try:
- master_fd, slave_fd = openpty()
+ master_fd, slave_fd = pty.openpty()
got_pty = True
except EnvironmentError as e:
_disable_openpty = True
if got_pty:
# Disable post-processing of output since otherwise weird
# things like \n -> \r\n transformations may occur.
- import termios
mode = termios.tcgetattr(slave_fd)
mode[1] &= ~termios.OPOST
termios.tcsetattr(slave_fd, termios.TCSANOW, mode)
if got_pty and \
copy_term_size is not None and \
os.isatty(copy_term_size):
- from portage.output import get_term_size, set_term_size
rows, columns = get_term_size()
set_term_size(rows, columns, slave_fd)