r"""Show stack trace on SIGQUIT (Ctrl-\) or SIGINFO (Ctrl-T on macOS).
()
| 143 | |
| 144 | @contextmanager |
| 145 | def show_stack(): |
| 146 | r"""Show stack trace on SIGQUIT (Ctrl-\) or SIGINFO (Ctrl-T on macOS).""" |
| 147 | import signal |
| 148 | import sys |
| 149 | |
| 150 | if sys.platform != "win32": |
| 151 | signal.signal(signal.SIGQUIT, _sigshow) |
| 152 | |
| 153 | try: |
| 154 | # only available on macOS |
| 155 | signal.signal(signal.SIGINFO, _sigshow) # type: ignore[attr-defined] |
| 156 | except AttributeError: |
| 157 | pass |
| 158 | yield |
| 159 | |
| 160 | |
| 161 | def _get_path_func(tool: str, ext: str): |