diff options
| author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2024-08-25 22:01:56 (GMT) |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-08-25 22:01:56 (GMT) |
| commit | e37b7f1a9c950a6e0c09474663726794ca9e4bc5 (patch) | |
| tree | 9063b435b516d3fd813aedb2bbabc172df854ad5 /Lib/_pyrepl/unix_console.py | |
| parent | bbed98272975fa85bea85322729549dbdf2af4f9 (diff) | |
| download | cpython-e37b7f1a9c950a6e0c09474663726794ca9e4bc5.zip cpython-e37b7f1a9c950a6e0c09474663726794ca9e4bc5.tar.gz cpython-e37b7f1a9c950a6e0c09474663726794ca9e4bc5.tar.bz2 | |
[3.13] gh-123177: Deactivate line wrap for Apple Terminal via scape codes in the new REPL (GH-123267) (#123322)
gh-123177: Deactivate line wrap for Apple Terminal via scape codes in the new REPL (GH-123267)
(cherry picked from commit fdb3f9b588f58f3cf95fe1dbf6e5b61ef525a351)
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
Diffstat (limited to 'Lib/_pyrepl/unix_console.py')
| -rw-r--r-- | Lib/_pyrepl/unix_console.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Lib/_pyrepl/unix_console.py b/Lib/_pyrepl/unix_console.py index 18b2bba..bdea285 100644 --- a/Lib/_pyrepl/unix_console.py +++ b/Lib/_pyrepl/unix_console.py @@ -29,6 +29,7 @@ import signal import struct import termios import time +import platform from fcntl import ioctl from . import curses @@ -334,6 +335,10 @@ class UnixConsole(Console): raw.cc[termios.VTIME] = 0 tcsetattr(self.input_fd, termios.TCSADRAIN, raw) + # In macOS terminal we need to deactivate line wrap via ANSI escape code + if platform.system() == "Darwin" and os.getenv("TERM_PROGRAM") == "Apple_Terminal": + os.write(self.output_fd, b"\033[?7l") + self.screen = [] self.height, self.width = self.getheightwidth() @@ -362,6 +367,9 @@ class UnixConsole(Console): self.flushoutput() tcsetattr(self.input_fd, termios.TCSADRAIN, self.__svtermstate) + if platform.system() == "Darwin" and os.getenv("TERM_PROGRAM") == "Apple_Terminal": + os.write(self.output_fd, b"\033[?7h") + if hasattr(self, "old_sigwinch"): signal.signal(signal.SIGWINCH, self.old_sigwinch) del self.old_sigwinch |
