2021年3月20日星期六

How to write to input part in C?

I'm trying to write a mini shell in C for a school project, and what I want to do is doing a sort of command history (like in shell), when I press the UP key it writes the previous input into the input part, DOWN does the opposite, etc..., and you can edit it before pressing enter to send it to the program, like this (sorry for the bad english): [] represents the user cursor

my_shell$ some input wrote by me  my_shell$ []  my_shell$ some other input  my_shell$ []  and now if I press UP  my_shell$ some other input[]  If I press UP again  my_shell$ some input wrote by me[]  

I'm allowed to use termcaps and some other functions isatty, ttyname, ttyslot, ioctl, getenv, tcsetattr, tcgetattr, tgetent, tgetflag, tgetnum, tgetstr, tgoto, tputs.

The problem is I can't understand the documentation of ioctl and tty functions, and I can't find well explained tutorials on these functions with examples, and I can't find the documentation for what I'm trying to do with them.

Can someone explain me those functions in an understandable way ? And how should I apply them for what I'm trying to do (I'm searching for a Linux-MacOs compatibility way) Thanks for your help.

https://stackoverflow.com/questions/66723454/how-to-write-to-input-part-in-c March 20, 2021 at 11:42PM

没有评论:

发表评论