I’m having trouble working this out. Basically my program has a standard input, I want to modify this so if the user enters a space it automatically replaces it with a / whilst they’re typing. I have no idea how i’d even go about doing this or if it is even possible so I am grateful for any help either way.
I’m having trouble working this out. Basically my program has a standard input, I
Share
You would need to turn off echoing of the characters typed and then echo them yourself after validating them, replacing characters as necessary. There are different ways to do that for different operating systems (e.g. Linux vs. Windows), and even more unfortunately, that can mean taking control of the entire screen just for this simple function since the backspace/delete key would need to be handled properly (even over multiple lines if necessary). In short, you’re taking control away from the user while making yourself responsible for the common functionality that a user would expect, which makes things rather difficult because you can’t know how certain terminals behave, not to mention issues with locales. It’s easier just to replace the characters yourself after the input is received or issue an error message, depending on your purpose and specific use-case.
Edit: PDCurses is cross-platform, so you might try that if you’re still interested. It’s easier than coding for specific platforms.