mirror of
https://github.com/kovidgoyal/kitty
synced 2026-07-26 18:22:09 +02:00
Improve CWD detection when there are multiple foreground processes in the TTY process group
This commit is contained in:
@@ -86,6 +86,8 @@ Detailed list of changes
|
|||||||
|
|
||||||
- Fix a regression in the previous release that broke :opt:`active_tab_foreground` (:iss:`4620`)
|
- Fix a regression in the previous release that broke :opt:`active_tab_foreground` (:iss:`4620`)
|
||||||
|
|
||||||
|
- Improve CWD detection when there are multiple foreground processes in the TTY process group
|
||||||
|
|
||||||
- ssh kitten: Fix location of generated terminfo files on NetBSD (:iss:`4622`)
|
- ssh kitten: Fix location of generated terminfo files on NetBSD (:iss:`4622`)
|
||||||
|
|
||||||
- A new action to clear the screen up to the line containing the cursor, see
|
- A new action to clear the screen up to the line containing the cursor, see
|
||||||
|
|||||||
@@ -344,8 +344,18 @@ class Child:
|
|||||||
assert self.child_fd is not None
|
assert self.child_fd is not None
|
||||||
pgrp = os.tcgetpgrp(self.child_fd)
|
pgrp = os.tcgetpgrp(self.child_fd)
|
||||||
foreground_processes = processes_in_group(pgrp) if pgrp >= 0 else []
|
foreground_processes = processes_in_group(pgrp) if pgrp >= 0 else []
|
||||||
if len(foreground_processes) == 1:
|
if foreground_processes:
|
||||||
return foreground_processes[0]
|
# there is no easy way that I know of to know which process is the
|
||||||
|
# foreground process in this group from the users perspective,
|
||||||
|
# so we assume the one with the highest PID is as that is most
|
||||||
|
# likely to be the newest process. This situation can happen
|
||||||
|
# for example with a shell script such as:
|
||||||
|
# #!/bin/bash
|
||||||
|
# cd /tmp
|
||||||
|
# vim
|
||||||
|
# With this script , the foreground process group will contain
|
||||||
|
# both the bash instance running the script and vim.
|
||||||
|
return max(foreground_processes)
|
||||||
return self.pid
|
return self.pid
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
|||||||
Reference in New Issue
Block a user