Title: gh-65339: Save IDLE Shell and Output windows as text by default by serhiy-storchaka · Pull Request #152742 · python/cpython · GitHub
Open Graph Title: gh-65339: Save IDLE Shell and Output windows as text by default by serhiy-storchaka · Pull Request #152742 · python/cpython
X Title: gh-65339: Save IDLE Shell and Output windows as text by default by serhiy-storchaka · Pull Request #152742 · python/cpython
Description: The Shell and Output windows contain shell logs and Find in Files (grep) output, not Python source, so defaulting their Save As dialog to .py is misleading — beginners have saved a Shell session as .py and then hit a SyntaxError running it (see the issue). IOBinding gains text_filetypes (text files listed first) and text_defaultextension = '.txt'. OutputWindow.__init__ switches its io to these, and the Shell (PyShell(OutputWindow)) inherits it. .py is still selectable, just no longer the default. Terry also considered removing .py as an option entirely for these windows; that stricter change is left out here. The added test checks that an Output window's save defaults to text. 🤖 Generated with Claude Code Issue: gh-65339
Open Graph Description: The Shell and Output windows contain shell logs and Find in Files (grep) output, not Python source, so defaulting their Save As dialog to .py is misleading — beginners have saved a Shell session as...
X Description: The Shell and Output windows contain shell logs and Find in Files (grep) output, not Python source, so defaulting their Save As dialog to .py is misleading — beginners have saved a Shell session as...
Opengraph URL: https://github.com/python/cpython/pull/152742
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:452169dd-00f2-656b-ac7a-995c75dac923 |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | AF2A:13AD7A:26018A:31BFF6:6A503D8A |
| html-safe-nonce | 3ef269629a87664018800287601fe45cc434ea7ba874cebd2a51f901285ce2bc |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBRjJBOjEzQUQ3QToyNjAxOEE6MzFCRkY2OjZBNTAzRDhBIiwidmlzaXRvcl9pZCI6IjY5NDQ2MjE0MjExMzQ4ODgzMzAiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 0f0865bd7ae9d762f3163976404c88327729fa61b1f5c302831777bed9e06fa6 |
| hovercard-subject-tag | pull_request:3968630774 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/python/cpython/pull/152742/files |
| twitter:image | https://avatars.githubusercontent.com/u/3659035?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/3659035?s=400&v=4 |
| og:image:alt | The Shell and Output windows contain shell logs and Find in Files (grep) output, not Python source, so defaulting their Save As dialog to .py is misleading — beginners have saved a Shell session as... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | d6dc8294eb500fa36bbc57472d61fe87c522f9c3c1d64f70f4926f66a66a7efb |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive full-width |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | d90666eaf032b7eb8975a378efe38e37f4ebb96c |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width