如何在 Sublime Text 中为正在运行的程序启用输入
在 Sublime Text 中,没有内置的处理输入的机制(例如,通过使用外部程序的 Python 的 raw_input()) 等函数。但是,有几种解决方法可以促进输入功能。
用于实时输入的 SublimeREPL
SublimeREPL 是一个流行的 Sublime Text 插件,允许与正在运行的代码交互口译员。它提供将输入实时传递给正在运行的程序的功能。请按照以下步骤使用 SublimeREPL:
用于独立交互的自定义构建系统
如果 SublimeREPL 不能满足您的需求,创建自定义构建系统可以让您独立运行您的程序,并且处理输入。
Windows 构建系统:
{ "cmd": ["start", "cmd", "/k", "path/to/python.exe", "$file"], "selector": "source.python", "shell": true, "working_dir": "$file_dir", "env": {"PYTHONIOENCODING": "utf-8"} }
将“path/to/python.exe”替换为 Python 可执行文件的路径。按 Ctrl B 在新的 cmd 窗口中构建并运行您的程序。
macOS 构建系统:
{ "shell_cmd": "osascript -e 'tell app \"Terminal\" to do script \"cd $file_path & python3 -u $file\"'", "working_dir": "$file_path", "selector": "source.python", "env": {"PYTHONIOENCODING": "utf-8"} }
指定您的 Python 可执行文件(如果它不在您的 $ 上)小路。运行构建系统会在终端窗口中打开程序。
Linux 构建系统:
{ "shell_cmd": "gnome-terminal --working-directory=$file_path -- bash -c 'python3 -u \"$file\" & read -n 1 -s -r'", "working_dir": "$file_path", "selector": "source.python", "env": {"PYTHONIOENCODING": "utf-8"} }
程序运行完毕后按任意键关闭终端窗口.
增强型终端插件交互
Terminus 是一个多功能插件,为管理输入提供了全面的解决方案。它提供了一个图形界面,用于通过构建面板与正在运行的程序进行交互,从而无需自定义构建系统。使用 Package Control 安装 Terminus 并创建以下构建系统:
{ "target": "terminus_exec", "cancel": "terminus_cancel_build", "cmd": [ "/path/to/python", "-u", "$file" ], "working_dir": "$file_path", "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)&" }
根据其文档配置 Terminus 以利用其高级功能。
通过实施这些解决方法,您可以有效地使用输入,同时在 Sublime Text 中运行外部程序,实现更全面的编码体验。
以上是在 Sublime Text 中运行外部程序时如何处理输入?的详细内容。更多信息请关注PHP中文网其他相关文章!