Home > Backend Development > Python Tutorial > How Can I Get User Input in Sublime Text When Programming?

How Can I Get User Input in Sublime Text When Programming?

DDD
Release: 2024-12-18 05:29:11
Original
494 people have browsed it

How Can I Get User Input in Sublime Text When Programming?

Accessing User Input in Sublime Text for Programming

When working with Sublime Text 3, users may encounter challenges when attempting to obtain user input through Python functions like raw_input() or input(). This issue persists with input handling in other languages as well.

Sublime Text Limitations

Sublime Text, by itself, lacks the ability to handle input via these functions. To overcome this limitation, you can consider the following solutions:

SublimeREPL

Package Control offers SublimeREPL, which enables you to transfer or execute portions or all of your code through an active REPL. You may need to modify the Main.sublime-menu files to configure your preferred interpreter.

Custom Build System

If SublimeREPL does not play well with your code or you desire independent execution, you can create your own build system. For Windows, save the following as Packages/User/Python_cmd.sublime-build:

{
    "cmd": ["start", "cmd", "/k", "python.exe", "$file"],
    "selector": "source.python",
    "shell": true,
    "working_dir": "$file_dir",
    "env": {"PYTHONIOENCODING": "utf-8"}
}
Copy after login

Adjust the path to your Python executable accordingly. Choose Python_cmd as your Build System and press Ctrl B to execute your code in a new cmd window.

Platform-Specific Build Systems

For operating systems other than Windows, use the following build systems:

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"}
}
Copy after login

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"}
}
Copy after login

Terminus Plugin

As an alternative, the platform-independent Terminus plugin offers a drop-in replacement for the default build system engine. Create the following build system for Python:

{
    "target": "terminus_exec",
    "cancel": "terminus_cancel_build",
    "cmd": ["/path/to/python", "-u", "$file"],
    "working_dir": "$file_path",
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)""
}
Copy after login

Remember to change the path to your Python executable. Terminus allows for extensive customization and additional features.

The above is the detailed content of How Can I Get User Input in Sublime Text When Programming?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template